Navigating the Application

This application consists of two sections. On the left is the Main Menu and on the right are Tabs. The Main Menu displays the available reports, folders, and buttons. Tabs can contain the New Report Wizard, report outputs, design windows, or help pages.

Main interface showing the main menu and tabs

Getting Started

The Getting Started tab will be first tab displayed when entering the application in most cases. The default Getting Started page has three clickable actions:

getting-started.png
  • Add.png Create — click to to open the Create New Report menu to create a new report.
  • MainLeftPaneViewReports.pngOpen — click to open the Report Tree. The search field at the top of the tree will be highlighted, and the cursor will be moved there
  • Learn More — click to open the Contextual Help system

Main Menu

Through the Main Menu, you can:

  • Create new reports
  • Search for reports
  • Read report descriptions
  • Run Reports
  • Export reports to other types (Excel, PDF, RTF, and CSV)
  • Duplicate reports to save time setting up similar reports
  • Edit reports
  • Schedule reports to be emailed or archived
  • Manage folders and report storage

The main menu, depending on system configuration, has three or four mode icons on the left-side. They are:

  • MainLeftPaneNewReport.png Create New Report
  • MainLeftPaneViewReports.png Browse Reports
  • MainLeftPaneDataFields.png View Data Objects
  • MainLeftPaneScheduleManager.png View Schedule Manager

The active mode is indicated with a blue icon, for example when the Browse Reports mode is selected, the icon looks like this: MainLeftPaneViewReportsSelected.png. Click on the icons to change the Main Menu mode or click on the currently active icon to collapse the main menu and hide it. To show the main menu again, click on any of the icons.

The Main Menu can be broken down into two components: the Report Tree and the Report Descriptions Window.

navigatingtheapp.report_tree_desc.png

The Report Tree and Report Description

Report Tree

The Report Tree contains the individual user’s view of their applicable Folders/Sub-Folders and the Reports contained within them.

A DataFieldSearch.png

Search field at the top of the Report Tree allows for easily finding a report by name or description. Click the Search Options SearchOptions.png icon and choose to either Search by Name only or to Include Description in the search. If Include Description is checked, either press the Enter key or click the Search DataFieldSearch.png icon on the right to start the search.

Status icons in each content item’s row indicate its status:

  • TreeReportLock.png Read Only — content cannot be modified in any way (as designated by the administrator), with the Reports and Sub-Folders within inheriting the same permissions (unless otherwise specified).
  • TreeReportOwned.png Owner — content is owned by the current user. Owners of content have full access to the item and may rename, move, and delete it for all users.

Note

A system administrator can still restrict access to content you may own. In this case, the Read Only TreeReportLock.png

icon will appear in place of the Owner TreeReportOwned.png icon.

A user can view a list of a folder’s contents by either:

  • double-clicking the folder name
  • left-clicking the Expand ArrowCollapse.png icon next to the folder name

Right-Clicking on Folders

If a user right-clicks on a folder they have access to (it is not marked read only) within the Report Tree, a menu with the following options appears. The system administrator can enable or disable certain options, so the menu in your system may appear slightly different.

mgaltzuDfD.png

  • AddFolder.png Add Root Folder — create a new folder in the root (top) folder.
  • AddSubfolder.png Add Child Folder — create a new sub-folder within the existing folder.
  • MoveFolderToRoot.png Move Folder To Root — moves the folder to the root of the tree.
  • AddNew.png New… — add a new report to the folder and specify the report type.
    • NewExpressView.png ExpressView
    • NewExpressReport.png Express Report
    • NewAdvancedReport.png Advanced Report
    • NewDashboardReport.png Dashboard
    • NewChainedReport.png Chained Report
  • Rename.png Rename — rename the folder.
  • X Delete — delete the folder. If the TreeReportOwned.png Owner deletes the folder, it is deleted for all users of the system. If someone other than the owner deletes the folder, it is deleted for that user only.

    Note

    A folder and all of its sub-folders must be empty for all users in order to delete the folder.

  • Expand All — expand the contents of the relevant folder, including all of its sub-folders
  • Collapse All — collapses the contents of the relevant folder, including all of its sub-folders.
  • Upload.png Upload — upload a local copy of a report definition file to the folder.

Right-Clicking on Reports

The system administrator can enable or disable certain options, so the menu in your system may appear slightly different.

TE3JTgYEd8.png

  • pencil Edit — opens the Report Designer screen for the selected report.
  • RunReportSmall.png Run Report — executes the report and displays it in HTML format.
  • ExportSmall.png Export As — allows the user to execute a report in any of the following formats:
    • Excel — as a Microsoft Excel workbook
    • PDF — as a Portable Document Format (PDF) file
    • PDF (Chained Report) v2021.2+ — available only for Dashboards, each tile appears as a page in a Portable Document Format (PDF) file. See Exporting Dashboards for more information.
    • PDF (Snapshot) v2021.2+ — available only for Dashboards, an image of the Dashboard as it appears on screen appears in a single page of a Portable Document Format (PDF) file. See Exporting Dashboards for more information.
    • RTF — as a Rich Text Format (RTF) file
    • CSV — as a plain-text Comma Separated Values (CSV) file

    Note

    If one of these export types is unavailable, it may have been disabled by your administrator or by the user who created the report.

  • ScheduleAddSmall.png Schedule Report — Schedule a report to run immediately, at a later time, or at regular intervals. For more information on scheduling reports, review the Scheduling a Report article.
  • EmailReportSmall.png Email Report — email a report immediately to a specified email address. Clicking an Export As… option allows the user to specify the export format type.

navigatingtheapp.email_report.png

Sending a copy of the report by e-mail as a PDF attachment to [email protected]

  • icons.rename.pngRename — rename the report.

    Note

    In versions pre-v2020.1 if a report is renamed that is used on a composite report (i.e. a Dashboard, Chained Report or a Scheduled Report), an error message will appear when attempting to Execute or Edit it as the link will be broken.

  • icon.duplicate.png Duplicate — duplicate a report and place it in a specified folder
  • X Delete — delete the selected report. If the TreeReportOwned.png Owner deletes the report, it is deleted for all users of the system. If someone other than the owner deletes the report, it is deleted for that user only.
  • Download.png Download — Download this report’s definition file to the local computer.

Moving Reports and Folders

If someone other than the owner of a report or folder moves it from one folder to another, the item is moved only for that user.

If the owner of the content item moves it, it is moved for all users. The owner’s permissions are “sticky” for that item. The owner will retain the same level of permission they had before the item was moved. If the owner moves a folder to one where the permissions are different than its current location, they will be prompted how to handle the permissions after the move:

Choose Apply New Permissions, Keep Existing Permissions or Cancel Move

Folder Move confirmation prompt

These changes only affect content that the current user owns:

  • Apply New Permissions — apply the access permissions of the destination folder to content you own.
    Example: if moving My Reports to Public, any user of the system will gain access to the content in My Reports you own. The permissions don’t change for content other users own.
  • Keep Existing Permissions — do not apply the access permissions of the destination folder, retain the permissions the content currently has.
    Example: if moving My Reports to Public, only the current user will have access to the items in My Reports.
  • Cancel Move — do not move the folder and leave it in its current location

Report Description Window

This window displays the description of the selected report. If the report was never given a description, this window remains blank when the report is selected in the Report Tree. For more info on Report Descriptions, please see Report Types.

navigatingtheapp.report_description_window.png

Tabs

Tabs make up the application’s main interface. This is where users build, design, and view reports as well as access dashboards and help pages.

dpbxwGhSiJ.png

Getting Started tab v2020.1+

Tabs can be rearranged by clicking and dragging them left or right.

navigatingtheapp.reorganize_tab.png


iu7q1lTx8U.gif
A flashing tab name indicates the report has refreshed and there is new information to view

A save reminder indicator, in the form of a small circle, will appear if changes made to the report have not yet been saved (v2021.1+).

gnPOaYNGBV.png

The tab on the right named Employee Information has changes waiting to be saved

Close tabs by either:

  • clicking the Close Tab icons.delete.png icon to the right of the tab name
  • clicking the third mouse button (typically the scroll wheel) anywhere on the tab name
  • right-clicking on a tab displays additional Tab options, such as closing the tab or closing all other tabs.

navigatingtheapp.close_tabs.png

Options for closing user interface tabs

User Preferences

Clicking on the User Preferences icons.userpref.png

icon in the top-right corner of the window opens the User Preferences dialog. The User Preferences dialog contains tabs: Startup Reports and User Reports.

Note

The system administrator can disable some of these preferences, so they not all be available in all environments.

navigatingtheapp.user_preferences.png

User Preferences dialog

Startup Reports Tab

A startup report is a report, Dashboard or ExpressView that runs automatically when the Web Application is launched. Instead of showing the Getting Started page, the startup reports are displayed.

To add a startup report, navigate to it in the dialog’s report tree and then either drag it to the box on the right, or click the Add.png

Add button at the bottom of the report tree. The system administrator can limit the number of startup reports each user may have.

Use the Move Row Up MoveGridRowUp.png

and Move Row Down MoveGridRowDown.png icons to change the order of the startup reports.

Use the Delete DeleteItem.png

icon to remove a startup report. This only stops the report from loading on startup, it does not remove the report from the application.

User Reports

A user report is a report that has certain customization placed on it by an individual user from within the Report Viewer. For example, a user might make certain filter value selections.

Any of your user reports will be shown in this list. User reports may be deleted by clicking on the Delete DeleteItem.png

icon on the corresponding report row. User reports are added from within the Report Viewer.

Help

Clicking on the Contextual Help Question Mark

icon in the top-right corner of the window walks the user through specific portions of the application. This context-sensitive help menu is indexed and completely searchable, granting the user easy access to all information.

ETkVtKJCxO.png

The Context-Sensitive-Help system in the application

To learn more about getting started, continue with Report Types.

Keyboard Shortcuts

This article lists all the available keyboard shortcuts in the Web Application User Interface and describes their behavior in their applicable contexts.

Where a plus sign + appears between two keys, it means hold down the key before it and press the key after it. For example, Ctrl+V means hold down the Control key and then press the V key. Release both keys after pressing V.

Important

The key mappings are the same for PC and Mac keyboards. Use the Mac Control key when directed.

Global

  • Ctrl+Down Arrow or Ctrl+Right Arrow — Next tab
  • Ctrl+Up Arrow or Ctrl+Left Arrow — Previous tab
  • Ctrl+Shift+V — Show application version number
  • Ctrl+Shift+X — Create debug package (only if debugging is enabled in system configuration)

Report / Data Tree

  • [ — Toggle last open tree pane
  • Up Arrow — Previous item
  • Down Arrow — Next item
  • Delete — Delete selected report
  • Enter — Edit selected report
  • / — Search for a report. The cursor will move to the DataFieldSearch.png Search field on top of the Report Tree.

New Report Menu

  • Up Arrow — Previous item
  • Down Arrow — Next item
  • Enter — Select item
  • Esc — Close menu

Advanced Report Designer

  • Arrows — Select cells
  • Ctrl+S — Save report
  • F2 — put focus (move the cursor to) the Formula Bar
  • Delete — Delete cell contents
  • Ctrl+C — Copy cell contents
  • Ctrl+X — Cut cell contents
  • Ctrl+V — Paste cell contents
  • Ctrl+Click — Select multiple cells, rows, or columns
  • Shift+Click — Select a range of cells, rows, or columns
  • Ctrl+Z — Undo
  • Ctrl+Y — Redo
  • Ctrl+B — Bold cell text
  • Ctrl+I — Italicize cell text
  • Ctrl+U — Underline cell text
  • Tab — Select next cell
  • Shift+Tab — Select previous cell
  • Enter — Open cell text editor / close cell text editor and apply changes
  • Esc — Close cell text editor without applying changes / close wizard or modal window

Report Filters Dialog

These shortcuts apply to the Report Filters dialog in the Advanced Report Designer.

  • Ctrl+[ — Add an opening parenthesis before the selected filter
  • Ctrl+] — Add a closing parenthesis before the selected filter
  • Ctrl+Shift+[ — Remove an opening parenthesis before the selected filter
  • Ctrl+Shift+] — Remove a closing parenthesis before the selected filter

Report Joins Menu (Complex)

  • Ctrl+. — Add parentheses around last clicked condition
  • Ctrl+, — Remove parentheses from around last clicked condition

Formula Editor

  • Up Arrow — Select previous item in search list
  • Down Arrow — Select next item in search list
  • Right Arrow — Select next argument in formula
  • Left Arrow — Select previous argument in formula

Color Picker Menu

  • Enter — Apply selected color and close picker
  • Esc — Close picker without applying color

ExpressView

  • Page Up — Scroll up
  • Page Down — Scroll down
  • Ctrl+Home — Start of report
  • Ctrl+End — End of report
  • Ctrl+Arrows — Scroll the report
  • N — Next page
  • P — Previous page
  • S — Toggle sorts pane
  • F — Toggle filters pane
  • O — Toggle formatting pane
  • E — Toggle settings pane
  • V — Toggle visualizations menu
  • C — Toggle selected cell menu
  • Shift+V — Show/hide visualization
  • Ctrl+R — Refresh data
  • Ctrl+S — Save ExpressView
  • Ctrl+F — Show search report menu

ExpressView Search

  • Enter — Find next result
  • Shift+Enter — Find previous result
  • Esc — Close menu

Dashboard Designer

  • E — Open/close options menu pre-v2019.2, opens the Save menu in v2019.2
  • Ctrl+S — Save
  • Esc — Deselect all tiles
  • Arrow keys — Moves the selected tiles
  • Delete — Delete the selected tiles
  • Ctrl+A — Select all tiles
  • Ctrl+C — Copy selected tiles
  • Ctrl+V — Paste copied tiles
  • F — Toggle filters menu
  • O — Toggle formatting menu
  • Ctrl+Y — Redo
  • Ctrl+Z —Undo

Dashboard Viewer

  • F — Open/close the Filters pane
  • P — Open/close the Parameters pane

Report Types

There are five different report types available in the reporting application. Four are standalone types, and two are composite types which combine reports together. By default ExpressView, Advanced Report, and Dashboard are enabled in the interface. The system administrator can enable and disable other types of reports.

Dashboard

Dashboards combine one or more reports onto a canvas, providing a way to create a personalized arrangement and display of related reports.

Dashboard_2x.png
Dashboard Viewer

All standalone report types can be added to a Dashboard, and visualizations can be created directly on the canvas without needing to make a separate report. Dashboards can also have text, borders, images, interactive filters, and embedded web pages.

Dashboards run in the browser, can have interactivity such as dynamic filtering and drilldowns, and can refresh on a timed interval.

Visit the Dashboards documentation.

ExpressView

ExpressView is a tool to quickly get insight into vertically expanding data records and groups. An ExpressView can optionally include a visualization.

6KaqsFZ9Yn.png
ExpressView with pie chart visualization in v2021.1+

Built with an intuitive drag-and-drop interface, ExpressView is intended to be a way to get started quickly  viewing data as possible. ExpressViews can be converted to Advanced Reports in order to gain the additional capabilities of that format.

ExpressViews can be scheduled, added to Chained Reports and Dashboards, embedded into web pages, and exported to multiple formats.

Visit the ExpressView Documentation.

Advanced Report

Advanced Reports are the flagship report type of the application.

AdvancedReport_2x.png
Advanced Report

The most powerful reporting tools are available with Advanced Reports, including geographic maps; CrossTabs; repeating groups; complex join, filter, and sort logic; drilldowns to linked child reports, and more. Advanced Reports are made using an spreadsheet-like cell-grid interface. The Advanced Report Designer allows users to build reports without requiring knowledge of SQL or the underlying data model. Advanced Reports can be executed to a browser-based Report Viewer interface, which allows for interactivity, additional changes to be made without re-running the report, and for saving user-specific customization.

Advanced Reports can be scheduled, added to Chained Reports and Dashboards, embedded into web pages, used to populate document templates, and exported to multiple formats.

Visit the Advanced Reports documentation.

CrossTab Report

CrossTab Reports are a special type of Advanced Report.

CrossTabReport_2x.png
CrossTab Report

Also known as pivot tables, CrossTab Reports display and summarize data in a way that expands dynamically both vertically and horizontally.

Visit the CrossTab Reports documentation.

Chained Report

Chained Reports combine multiple reports into a single multi-page document.

ChainedReport_2x.png

This can simplify running and distributing a group of related reports at once. They also support collating reports along a common sort field, to create a super-grouping of common report data.

Chained Reports can be scheduled and exported to multiple formats.

Visit the Chained Reports documentation.

Building Your First Report

Choose the application version in use from the Viewing content for dropdown to see content relevant to that version.


There are two report types well suited for building your first report: ExpressView and Advanced Reports.

ExpressView is a tool to quickly get insight into vertically expanding data records and groups. An ExpressView can optionally include a visualization.

Advanced Reports are the flagship report type of the application. Advanced Reports are made using an spreadsheet-like cell-grid interface. The most powerful reporting tools are available with Advanced Reports, including geographic maps; CrossTabs; repeating groups; complex join, filter, and sort logic; drilldowns to linked child reports, and more.

Review Report Types to learn more.

The examples below utilize the Northwind sample data set.

Creating an ExpressView

This section will walk-through creating an ExpressView report listing the unit prices of products organized into categories. A column chart comparing the average price on a per-category basis is also included. The report looks like this:

CFe03qdgK0.png

  1. On the main menu in the top-left corner, click the Create New Report MainLeftPaneNewReport.png icon.
  2. Click ExpressView ThumbnailExpressView.pngto start the ExpressView Designer.
  3. Add the necessary data fields to the canvas, by dragging them from the MainLeftPaneDataFieldsSelected.png Data Fields Pane on the left side of the screen and dropping them into desired position on the canvas:
    • Categories.CategoryName
    • Products.ProductName
    • Products.Discontinued
    • Products.UnitPrice

    vpUVM7f0WY.gif

  4. To organize the report by the product category, set Categories.CategoryName as a Group. Click-and-drag on the CategoryName header and drop it to the Add Group drop zone.1AlIDaBjBh.gif
  5. To calculate the average unit price for each category, on the Group Totals line, click on the Sum for UnitPrice dropdown and change to Avg for UnitPrice.
    BHLfLnCM2t.png
  6. Add a chart to the report, by clicking the Chart ShowViz.png icon on the toolbar. Then, in the Properties Pane on the right, choose the Visualizations tab, and then Data. 5n3UIrMzZp.png
  7. Since columns that are not totaled don’t appear in charts, remove the Values for Products.ProductName and Products.Discontinued by clicking the X icon in each element. The chart will appear.
    vBfKTRkIaj.png
  8. Switch to the Type tab, then click the Column ChartTypeColumn.pngicon to change the chart to a column chart.
    6k7NKji2Wa.png

At this point, the ExpressView very closely matches the same report at the beginning of this article. It should look something like the figure below.

H7j72BDZjX.png

Continue on to apply formatting such as color schemes, fonts and column names:

  1. To style the groups and detail fields, click the Canvas DropDownArrow2.png FormatPaintbrush.png icon in the toolbar.
    1. Choose a color Theme from the dropdown. The Office Park theme is used in the example report. The color theme will immediately change on the canvas.
    2. Choose a Font from the dropdown. Bookman Old Style is used in the example report.
  2. Click the Canvas DropDownArrow2.png FormatPaintbrush.png icon again to close the menu.
    h3oAYL0cmE.png
  3. In the Properties Pane on the right, choose the Visualizations tab, then Appearance, then Chart Titles.
  4. Enter a Main Chart Title, and choose a font.
    Nt6LEC2Iin.png
  5. In the Labels section, choose a font to match the others. Optionally, add an X-Axis Title and Y-Axis Title.
    C4IngGwKIp.png
  6. Change to the Chart Colors section, then choose a color theme from the dropdown. The example report uses the Sandstone theme.
    We9iJ9INnz.png
  7. Change to the Chart Data section, scroll down to Number Format. This section formats how the values in the chart axes appear. Since they are average dollar values, set these controls as follows:
    • Enter 2 for Decimal Places
    • Check the Use Currency Symbol checkbox
      Thu0WXvTWX.png
  8. Each column can be given a custom name, font style and alignment. Click on a column header (e.g. CategoryName) and then in the SelectedCellMenu.png Selected Section tab of the Properties Pane, enter a Display Name, Horizontal Align choice, Font Style and Underline as desired. Repeat for the ProductName, Discontinued and UnitPrice columns.

    Note

    The Horizontal Align property will apply to the column header and the data in the column. The Display Name, Font Style and Underline only apply to the column header.

    XYcmYUORLi.png

  9. The data in the columns, and the totals can also be styled. Click on the white area of the Unit Price column between the header and the total. In the Selection Section tab of the Properties Pane, choose a Data Format (Number should already be selected). Repeat this step for the Group Totals, which will also apply the settings to the Report Totals line.
  10. Save the report by clicking the Save Save.png DropDownArrow2.png icon in the toolbar. Enter a Name, an optional Description and select a folder to save it to. The My Reports folder is a good choice for a first report.
  11. Click Run on the toolbar to switch to Live Data mode and see the new ExpressView in all its glory. Congratulations!

Additional Resources

  • ExpressView Documentation

Creating an Advanced Report

Tip

A quick way of getting an Advanced Report up and running is to start with an ExpressView, then export that ExpressView as an Advanced Report. Editing can then resume in the Advanced Report Designer.

This section will walk-through creating an Advanced Report from scratch with the Advanced Report Designer. The sample report lists the amount of revenue generated by each salesperson in a company, including the amount of revenue of each product category in a collapsible section. A multi-series column chart appears at the beginning of the report. The sample report looks like this:

MkOPuhzJkF.png

To jump through the steps of this tutorial, click one of the following links or start from step 1 below.

  • Setup the Report’s Layout (steps 1–8)
  • Add Data and Content to the Report (steps 9–12)
  • Apply Formatting to the Cells and Data (steps 13–16)
  • Add the Chart (steps 17–20)
  1. On the main menu in the top-left corner, click the Create New Report MainLeftPaneNewReport.png icon.
  2. Click Advanced Report ThumbnailAdvancedReport.pngto start the Advanced Report Designer.
  3. The Add Data Objects dialog appears. These data objects are needed for this report:
    • Categories
    • Products
    • Employees
    • Orders
    • OrderDetails

    Not all of these data objects appear on the report, but they provide a join path between the objects that do.
    zKcmN034Al.png


    Click Okay.
  4. The report will group and aggregate (summarize) data by the employee name, and by the product category name. Sorts are required to create groups. To create sorts:
    1. Click the Sorts SortsMenu.png icon on the toolbar to open the Report Sorts dialog.
    2. From the dropdown on the left, choose Employees, then double click the LastName field. This will add Employees.LastName as a sort.
      IdkgjepthR.png
    3. Repeat step 2 to add Categories.CategoryName as a second sort.
    4. Click Okay to close the Report Sorts dialog.
  5. This report will show two columns: one with the employee’s name and category names, the other withe actual revenue values. The other columns can be removed from the grid
    1. Hold the Ctrl key on the keyboard and click the column headers for columns E, D and C.
    2. Click the Column Menu MoreOptions_Black_Small.png icon to open the Column Menu.
    3. Click DeleteReportSmall.png Delete 3 Columns.
      oSgFnGa66v.gif
  6. The Page Header section is also not needed for this example report. Click the Section Menu MoreOptions_Black_Small.png icon on the Page Header, then click DeleteReportSmall.png Delete Section. The design grid should now look like this:
    glahf0GH9D.png
  7. The chart will reside in the Report Header section. To add it:
    1. Click the AddNew.png Add Section button
    2. Click ReportHeader.png Report Header.
  8. Add the Group Header sections for the Employee Name and Category Name:
    1. Click the AddNew.png Add Section button
    2. Click GroupHeader.png Group Header.
    3. In the Group Header dialog, select Employees.LastName from the dropdown list.twQ02ZeHOx.png
    4. Click Okay to close the Group Header dialog.
    5. Repeat steps 1–3 for Categories.CategoryName.
      The design grid should now look like this:
      Q05PrLQzbZ.png
  9. Add the data to the cells on the design grid:
    1. Add Categories.CategoryName directly from the Data Objects Pane by dragging it to cell A3 on the grid.
    2. Type the word Revenue into cell B2.
  10. Since the employee’s first and last names are contained in two different fields, a formula can be used to concatenate or join the fields together. Here is how:
    1. Select cell A2 by clicking it.
    2. Place the cursor into the FormulaLarge.png Formula Bar just below the toolbar.
    3. Type an equals sign =.
    4. Begin typing Employees. A tooltip will appear with all of the fields that contain the word Employees as guidance. Use the mouse or arrow keys to highlight Employees.FirstName then press Enter. The entire data field name will be added to the formula bar. Notice it is enclosed in { curly braces }. Data fields must always be enclosed in curly braces in formulas.
      YUa1KdhtZC.png
    5. Type &. This is called the concatenation character and tells the system to join two things together.
    6. Type ” “. This will add a space between the first and last names.
    7. Type another &.
    8. Type Employees again, this time highlighting Employees.LastName, then press Enter. The complete formula should look like this:
      ={Employees.FirstName} & " " & {Employees.LastName}
  11. Use another formula to calculate the revenue for each category:
    1. Select cell B3 by clicking it.
    2. Place the cursor into the fx Formula Bar just below the toolbar.
    3. Enter the formula exactly as it appears below:
      =AggSum({OrderDetails.UnitPrice}*{OrderDetails.Quantity})

      This formula uses an aggregate function to calculate sum of the revenues of all sales, by multiplying the quantity of each product sold by its unit price, then adding them all together. The breaking down of revenues into product categories, and for each employee happens automatically since the aggregate function is contained in the group sections created earlier.The design grid should now look something like this:
      tzKJNOru11.png

  12. Now is a good time to save the report. Click the Save Save.png DropDownArrow2.png icon on the toolbar. Enter a Name, an optional Description and select a folder to save it to. The My Reports folder is a good choice for a first report.
  13. Apply the color formatting to the cells to match the example report.
    1. Select cell A2, then click the Background Color BackgroundColor.png icon on the toolbar. Select a medium gray color. Click the Bold StyleBold.png icon to increase the font’s weight.
    2. Repeat step 1 for cell B2, choosing a medium green color. Click the Horizontal Alignment AlignLeft.png DropDownArrow2.png icon, then choose Center AlignCenter.png.
    3. Select cell A3, apply a light blue background color. Select cell B3 and apply a light green background color. Set cell B3 for a center alignment as well.
    4. Select both columns A and B, then place the cursor between the columns and drag to resize both of them.qvhBwDPHwR.gif
    5. To make the categories list collapsible, click the header for row number 2 to open the Row Menu. Click Collapse Rows.
    6. Delete the Detail section from the report, it won’t be needed.
  14. The design grid should now look like this:
    pK2LuT2xRM.png
    Click Run on the toolbar to execute the report to see the progress so far. In the Report Viewer, the report should look like this:
    M7qzxIYeUF.png
    Click on the Open Rows OpenRows.png icons to open or close the collapsed rows to see the revenue figures.
  15. Close the Report Viewer tab and return to the Report Designer.
  16. Apply borders and advanced numeric formatting to the data. These changes don’t appear on the Design Grid, but they affect how the data is presented in the Report Viewer and when exported to output files such as PDF or Excel.
    1. Select cell A2, then click the Format Cells FormatCells.pngicon. When the Format Cells dialog opens, switch to the Border tab.
    2. Check the Make Borders Uniform checkbox. Click the Color Chooser color-picker-icon.png icon, then choose black.
    3. Click Okay to close the dialog.
    4. Select cell B2, then click the Format Cells FormatCells.pngicon. Apply a top, right and bottom border with color black by setting the individual border settings.
      LC19CASv9P.png
    5. Repeat step 4 for:
      • cell A3 — apply a left, bottom and right border
      • cell B3 — apply a bottom and right border
    6. With cell B3 still selected, and the Format Cells dialog still open, switch to the Number tab to apply advanced numeric formatting to the revenue values contained within it:
      aYT2zLGuYz.png
      1. Under Category, select Number.
      2. Ensure Decimal Places is set to 2.
      3. Check the Use 1000 Separator and Use Currency Symbol.
      4. Click Okay to close the dialog.
  17. Run the report again to observe the changes that the formatting options have made to the report output. When satisfied, close the Viewer tab and return to the Designer.
  18. Hold the Ctrl key on the keyboard and click cells A1 and B1 to select both cells. Click the Merge Cells MergeCells.png icon on the toolbar to combine the cells together.
  19. Place the cursor between the headers for rows 1 and 2, then drag the mouse down to increase row 1’s height.
    lhBD0U6kXT.gif
  20. Select the new single cell on row 1, then add the chart:
    1. Click the Insert Insert.png DropDownArrow2.png icon on the toolbar, then select Type.png Chart to start the Chart Wizard.
    2. On the Type tab, select the Stack Column chart type. Then, click Next to advance to the Data tab.
      QQ05tQeR41.png
    3. Click the ApplyBtn.png Data Layout… button. Since all of the revenues that appear on the chart are in a single column but different rows, click Row Based Chart then click Okay to return to the Chart Wizard.
      OHy4s8uJ44.png
    4. Under Data for Chart, make the following choices, then click Next to advance to the Appearance tab.
      • Data Values — choose the formula =AggSum({OrderDetails.UnitPrice}*{OrderDetails.Quantity}). This setting determines the size of the colored segments in each column.
      • Data Labels — choose the formula ={Employees.FirstName}& ” ” & {Employees.LastName}. This setting determines the labels that appear along the X-axis of the chart.
      • Series Labels — choose the cell value Categories.CategoryName. This setting determines the labeling of each of the Data Values.
    5. Under Colors, choose Blue Grey as the Theme.
    6. Under Labels, enter Employee Sales by Category for the Chart Title.
    7. Click Finish to close the Chart Wizard.
  21. Save the report with the chart.
  22. The report design should now look like this:
    PpHeaILRvk.png
    Run the report to see the completed report design in the Report Viewer. Congratulations!
    Ovp0cEO0n8.png

Additional Resources

  • Advanced Reports: Sections
  • Advanced Reports: Design Grid
  • Advanced Reports: Sorts
  • Charts

What are formulas?


Formulas allow you to do calculations, parse strings, insert images, and much more. Formulas are the composition of functions, parameters, Data Fields, and references to other cells.

Functions

A function takes zero or more inputs, called arguments, and returns a value based on some calculation or manipulation of those arguments. For example, a Year() function takes a date as an argument and returns only the year portion of the date. Use the Year() function on a report or on a chart to display or work with only the year portion of a date.

There are many categories of functions to choose from, and the system administrator has the ability to add their own Custom Functions to the system to fill a specific need. Functions can be combined together with other functions and with other operators. Nearly all formulas used in this application will use at least one function.

For a complete list of functions, including description, remarks and examples, refer to the List of Functions.

Parameters

Parameters are special variables that can be assigned when logging in to the application, or they can be prompted for when executing a report. There are also several built-in parameters.

To use a parameter in a formula, enter its name between @ signs. Parameters can be used as function arguments or alone in a cell following an = sign.

For a list of parameters and their descriptions, see the Formula Editor article. The system administrator has the ability to create additional parameters.

A special type of parameter called a dropdown parameter can be created by the system administrator. These parameters have two values: the Value, used by the server for processing and the Display Value that appears in cells and is used in formulas. These distinct values can be accessed with @[email protected] and @[email protected] respectively. For more information, consult with the system administrator.

Examples

@[email protected]
@[email protected]
@[email protected]

Note

Parameters are case sensitive (pageNumber is not the same as pagenumber). Parameter names may not contain the at symbol (@).

Data Fields

To use a Data Field as part of a formula, enter its name between curly braces.

Example: {Orders.OrdersID}

Cell References

To reference another cell’s value, enter the column name with a capital letter and the row number between square brackets. A cell reference can be used in formulas or alone in a cell following an = sign.

Note

Cell references will update if rows or columns are added or deleted; however dragging a cell will not update cell references. This may cause errors in some formulas.

Example: [A2]

Adding Formulas to a Report

This section covers adding formulas to an Advanced Report. However, formulas may also be used on ExpressView and in Dashboards. Refer to the ExpressView: Formula Columns and Dashboard Designer articles for more information about using formulas in those Report Design environments.

Formula Editor

  1. Click in the cell in which you want the formula to appear.
  2. Click the Formula Editor FormulaLarge.png icon in the toolbar.
  3. Create the desired formula by selecting the desired functions and clicking the button or by drag-and-dropping them into the Formula box.
    hvBSrT3K6n.png
  4. Click Okay.

Note

When nesting functions, begin with the outermost function and add them moving inward.

Example: =TRUNCATE(SQRT(162)) will first find the square root of 162, then remove the numbers after the decimal point returning only the whole number portion. Details of the TRUNCATE and SQRT functions can be found in their respective article sections.

Manual Entry

  1. Navigate to the Report Designer.
  2. Enter the formula into a cell by:
    • clicking in the desired cell and entering the formula into the formula bar just below the toolbar, or
      VWtTZsTIWu.png
    • double clicking in the desired cell and directly entering the formula into the cell textbox
      LgCbNETv4M.png
  3. Press the Enter key on the keyboard to save the formula into the cell

Formula Editor

The Formula Editor‘s features guide users through creating formulas.

Use the Search field to search through the functions by name. Or start typing in the Formula field to get a list of functions that match what’s entered.

screen.formula_typetosearch.png

The Formula Editor suggests functions that match the entered text, in this case If matches If(), DateDiff() and IsNoDataQualified().

Tip

Search for data fields, report cells references, and parameters in the same manner.

Using Functions

Formulas work by applying some calculations to a few values that you give them. A basic example of a formula is 1 + 2. In this example, the formula comprises one function, the addition function (+), and two arguments, the addends 1 and 2. When the report runs, the formula calculates and returns the sum, 3.

Not every function takes two arguments, so functions cannot always be written as argument1 function argument2. In most cases functions instead use the following format:

Function(argument1, argument2, ...)

The addition example could also be written as Add(1, 2). This is the style that most formulas in the application use. Most functions are more abstract than simple arithmetic. Each function has a description which tells you exactly what it does and how to use it.

Arguments

An argument is a value that a function uses to do a calculation. Functions have different amounts and types of arguments. When a function is first entered into the Formula field, there are placeholder values for each required argument. Click on a placeholder to see the description of the argument.

screen.formula_argumentdesc.png

Description of the condition argument of the If function

Some arguments are optional. Those are surrounded by brackets [ ]. Some arguments are a list of values. Those are followed by an ellipsis ....

screen.formula_optionalarg.png screen.formula_arglist.png 
The Today function takes an optional argument. The And function takes a list of arguments.

Tip

Some functions take no arguments. These are formatted with empty parentheses: Function()

You need to supply values for all of the function’s required arguments. Type a value into the argument space, or drag a data field or function over the placeholder.

screen.formula_dragfield.png

Dragging a data field to an argument

Formulas are used in several areas besides the report design: custom sorts and groups, drilldowns, conditional formatting for cells and charts, and custom crosstab fields, to name a few. In every area where you can use a formula you can click on the Formula Editor fx

icon to open the Formula Editor window. These areas may require a specific type of data to be returned from the formula. Some built-in functions, such as aggregates, may be unavailable. Consult the relevant topic for the specifics.

About Sections

Formulas which reference data fields or cells, with the exception of aggregate functions, should be in the same report section as the reference data. Detail sections repeat for every data field, group sections repeat for every group, and page sections repeat for every page. Since most formulas expect only one reference value, and not repeated values, referencing a repeated field or cell from outside of its section can return irregular data. Formulas need to repeat alongside their reference values. Aggregate functions are the exception since they are designed to evaluate once for a group of data. For more information, see Sections.

Manual Formula Entry

You have the option of typing in your functions, data fields, parameters, and cell references manually. Use the following formatting guidelines.

Text

Surround text with double or single quotation marks:

"Hello, World!"
'I am on fire'

If you want to use a quotation mark in the text, then surround the text with the opposite mark:

"You're on fire"
'He says "like" too often'

Do not use quotation marks around numbers.

Data Fields

{DataCategory.DataField}

where DataCategory is the name of the Data Object and DataField is the name of the data field.

Cell References

To use the value from another cell in a formula, use the following format:

[C#]

where C is the letter of the cell column, and # represents the number of the cell row.

For example, [B5] refers to cell B5.

Caution

Rearranging cells can cause cell references to break.

Parameters

Parameters return special values depending on some condition. The built-in parameters are:

  • @[email protected] — the current page number of the report
  • @[email protected] — the name of the report
  • @[email protected] — the name and path to the report

There may be additional parameters available, contact the system administrator for more information.

A special type of parameter called a dropdown parameter can be created by the system administrator. These parameters have two values: the Value, used by the server for processing and the Display Value that appears in cells and is used in formulas. These distinct values can be accessed with @[email protected] and @[email protected] respectively. For more information, consult with the system administrator.

Syntax Checking

If there are any syntactical errors in the function, the Formula Editor underlines the relevant section in red, and shows a brief description of the problem. Any errors must be corrected before running the report.

screen.formula_syntaxerror.png

This formula will not work without a concatenation operator “&”

Aggregate Functions

Aggregate Functions calculate values based on two factors: the input cell, which is usually but not always a data field, and the report section that the function is located, relative to the input. The location of the function determines which, and how many cell values will be sent to the input. For example, an AggCount() function in a Group Footer will count the values in the group, but that same function in a Report Footer will count the values for the entire report. Aggregate Functions can also be used in Group Headers.

Note

Aggregate Functions cannot be nested, used in conditional formulas, in the static sections of a report or ExpressView formula columns.

Aggregating One-to-Many Relationships

Aggregate Functions have an optional argument that indicates how to count aggregates for one-to-many relationships named recordLevel. This argument indicates whether aggregation should occur at the record level or entity level. Pass True() to force aggregation to occur for every record, regardless of whether or not the record represents a unique instance of the entity that is being aggregated. This is called record level aggregation.

By default aggregation occurs only for every unique instance of the entity being aggregated, not for repeat values that occur from a one-to-many data relationship.

In application v2019.2+ by default aggregation occurs for all values in a one-to-many data relationship. To aggregate only for each unique instance, False() must be passed to force aggregation on the entity level. This default behavior can be changed by a system administrator.

For example, in the two reports below, the Category Name column is being aggregated with the AggCount() function. The top figure aggregates on the entity level (recordLevel argument is False), and the bottom figure aggregates on the record level (recordLevel argument is True). Since the Category Name does not change, when aggregating by entity level, the count is 1. When aggregating on the record level, all records are considered for the aggregation and the count is 11.

kJ6UqgkOqE.png

Aggregating CategoryName on entity level (recordLevel is False)

XlBkDOnfVW.png

Aggregating CategoryName on record level (recordLevel is True)

Most users can choose to ignore this option by simply omitting the argument.

To count at the Entity level, the application checks for changes in the Unique Key Fields of the object on the one- side of the join. Therefore, it is important to sort the report by the one– side’s unique key fields, otherwise the result is undefined and may be nonsensical.

In application v2019.2, an administrator can add their own aggregate functions to the application, called a Custom Aggregate Function. Consult with your administrator for more details about what functions are available when building reports.

Note

The application will not include null values when aggregating in-memory. If the system administrator has enabled aggregation in the data source, the data source will determine how null values are handled during aggregation.

AggAvg

Description Returns the average of the values in a group.
Remark

Accepts data fields or cell references.


Optional
second argument indicates whether to count:

  • Records: True (default)
  • Entities: False

Due to a limitation in Google BigQuery Data Sources, calculating the aggregate average on a floating point column may cause non-deterministic results.

Example AggAvg({OrderDetail.Quantity})
returns the average quantity of sales orders.

AggCount

Description Returns the number of unique entities in a Data Object.
Remark

The AggCount() function uses the Data Object, not the Data Field. For example, the function AggCount({Officer.Salary}) counts the number of Officers. You could replace Officer.Salary with any other field in the Officer Data Category and the function would still count the number of officers.

When passing a cell reference, the function will count the rows in the group section, not the rows in the data object. See the example below.

Optional second argument indicates whether to count:

  • Records: True (default)
  • Entities: False
Example Consider this sample report that displays all of the products in each category. Cell B3‘s formula =AggCount({Categories.CategoryName}) will count the number of times a product has an associated category name (in this example, that is all of the products). However, cell C3‘s formula =AggCount([A1]) will count the number of categories in the header section.
chRBkgFS68.png
Therefore, the expected report output should look like this:
aliAdh6E9C.png
Where 12 is the number of products by virtue that they are all associated with the Beverages category, and 1 is the number of product categories referenced by cell A1.

AggDistinctCount

Description Returns the number of unique values in a group.
Remark

Accepts data fields or cell references.

Optional second argument indicates whether to count:

  • Records: True (default)
  • Entities: False

Optional third argument indicates whether to count null as a distinct value.

  • Count: True (default)
  • Ignore: False
Example AggDistinctCount({OrderDetail.Quantity})
returns the number distinct quantities in an order.

AggMax

Description Returns the maximum value in a group.
Remark

Accepts data fields or cell references.


Optional
second argument indicates whether to count:

  • Records: True (default)
  • Entities: False
Example AggMax({OrderDetail.Discount})
returns the largest discount.

AggMin

Description Returns the minimum value in a group.
Remark

Accepts data fields or cell references.


Optional
second argument indicates whether to count:

  • Records: True (default)
  • Entities: False
Example AggMin({OrderDetail.Discount})
returns the smallest discount.

AggSum

Description Returns the sum of the values in a group.
Remark

Accepts data fields or cell references.


Optional
second argument indicates whether to count:

  • Records: True (default)
  • Entities: False

Due to a limitation in Google BigQuery Data Sources, calculating the aggregate sum on a floating point column may cause non-deterministic results.

Example AggSum({OrderDetail.Quantity})
returns the total quantity of units ordered.

RunningSum

Description Returns a running total of the input cell.
Remark

The cell you want to sum.

Optional second argument of a Data Field or Category. The running sum will reset to 0 whenever there is a new value for this Data Field or Category.

Optional third argument indicates whether to count:

  • Records: True (default)
  • Entities: False
Examples
  1. RunningSum({Employees.Salary})
    returns running total of all the employee’s salary.
  2. RunningSum({Employees.Salary}, {Employees.Region})
    returns a running total of employee’s salary for each region.
  3. RunningSum({Employees.Salary}, {Company})
    returns a running total of employee’s salary for each Company.

AggMedian v2017.2+

Description Returns the median, or the middle value, of a data set.
Remark

Accepts data fields or cell references.

Optional second argument indicates whether to count:

  • Records: True (default)
  • Entities: False
Example AggMedian({OrderDetail.Quantity})
returns the median order quantity.

AggMode v2017.2+

Description Returns the mode, or the value that appears most often, of a data set.
Remark

Accepts data fields or cell references.

Optional second argument indicates whether to count:

  • Records: True (default)
  • Entites: False
Example AggMode({OrderDetail.Quantity})
returns the mode of order quantity.

AggStandardDeviation v2017.2+

Description Returns the standard deviation (SD) of a data set. SD is used to quantify the spread of the values in a data set. A lower SD indicates that values are close to the mean, and a higher SD indicates that values are more spread.
Remark

Accepts data fields or cell references.

Takes one, two, or three arguments:

The cell to get the standard deviation

Optional second argument indicates whether to calculate:

  • Sample-based standard deviation: “String”
  • Population-based standard deviation: “Population”

Optional third argument indicates whether to count:

  • Records: True (default)
  • Entities: False
Example AggStandardDeviation({OrderDetail.Quantity})
returns the standard deviation of order quantities.

AggVariance v2017.2+

Description Returns the variance of a data set. Variance is used to quantify the spread of the values in a data set, and is equal to the square of the standard deviation. Variance weighs outliers more heavily than standard deviation.
Remark

Accepts data fields or cell references.

Takes one, two, or three inputs:

The cell to get the variance

Optional second argument indicates whether to calculate:

  • Sample-based standard deviation: “String”
  • Population-based standard deviation: “Population”

Optional third argument indicates whether to count:

  • Records: True (default)
  • Entities: False
Example AggVariance({OrderDetail.Quantity})
returns the variance of order quantities

Financial Functions

Common methods for monetary calculations such as interest and depreciation.

Db

Description Returns the depreciation of an asset for a specified period using the fixed-declining balance method. Cost is the initial cost of the asset. Salvage is the value at the end of the depreciation (sometimes called the salvage value of the asset). Life is the number of periods over which the asset is being depreciated (sometimes called the useful life of the asset). Period is the period for which you want to calculate the depreciation. Period must use the same units as life. Month is the number of months in the first year. If month is omitted, it is assumed to be 12.
Remark The fixed-declining balance method computes depreciation at a fixed rate. Db uses the following formulas to calculate depreciation for a period: (cost – total depreciation from prior periods) * rate where: rate = 1 – ((salvage / cost) ^ (1 / life)), rounded to three decimal places. Depreciation for the first and last periods is a special case. For the first period, Db uses this formula: cost * rate * month / 12. For the last period, Db uses this formula: ((cost – total depreciation from prior periods) * rate * (12 – month)) / 12.
Example Data Assumptions: Initial cost=1,000,000 (A2); Salvage value=100,000 (A3); Lifetime in years=6 (A4).

Ex. Db([A2],[A3],[A4],1,7) – Depreciation in first year, with only 7 months calculated (186,083.33).
Ex. Db([A2],[A3],[A4],2,7) – Depreciation in second year (259,639.42).
Ex. Db([A2],[A3],[A4],3,7) – Depreciation in third year (176,814.44).
Ex. Db([A2],[A3],[A4],4,7) – Depreciation in fourth year (120,410.64).
Ex. Db([A2],[A3],[A4],5,7) – Depreciation in fifth year (81,999.64).
Ex. Db([A2],[A3],[A4],6,7) – Depreciation in sixth year (55,841.76).
Ex. Db([A2],[A3],[A4],7,7) – Depreciation in seventh year, with only 5 months calculated (15,845.10).

 

Ddb

Description Returns the depreciation of an asset for a specified period using the double-declining balance method or some other method you specify. Cost is the initial cost of the asset. Salvage is the value at the end of the depreciation (sometimes called the salvage value of the asset). Life is the number of periods over which the asset is being depreciated (sometimes called the useful life of the asset). Period is the period for which you want to calculate the depreciation. Period must use the same units as life. Factor is the rate at which the balance declines. If factor is omitted, it is assumed to be 2 (the double-declining balance method).

Note: All five arguments must be positive numbers.

Remark The double-declining balance method computes depreciation at an accelerated rate. Depreciation is highest in the first period and decreases in successive periods. Ddb uses the following formula to calculate depreciation for a period: ((cost-salvage) – total depreciation from prior periods) * (factor/life). Change factor if you do not want to use the double-declining balance method. Use the Vdb function if you want to switch to the straight-line depreciation method when depreciation is greater than the declining balance calculation.
Example Data Assumptions: Initial cost=2400 (A2); Salvage value=300 (A3); Lifetime in years=10 (A4).

Ex. Ddb([A2],[A3],[A4]*365,1)  – First day’s depreciation.
Ex. Ddb([A2],[A3],[A4]*12,1,2) – First month’s depreciation (40.00).
Ex. Ddb([A2],[A3],[A4],1,2) – First year’s depreciation (480.00).
Ex. Ddb([A2],[A3],[A4],10) – Tenth year’s depreciation.

Note: The results are rounded to two decimal places.

Fv

Description Returns the future value of an investment based on periodic, constant payments and a constant interest rate.
Remark For a more complete description of the arguments in Fv and for more information on annuity functions, see Pv (Above). Rate is the interest rate per period. Nper is the total number of payment periods in an annuity. Pmt is the payment made each period; it cannot change over the life of the annuity. Typically, Pmt contains principal and interest but no other fees or taxes. If Pmt is omitted, you must include the Pv argument. Pv is the present value, or the lump-sum amount that a series of future payments is worth right now. If Pv is omitted, it is assumed to be 0 (zero), and you must include the Pmt argument. Type is the number 0 or 1 and indicates when payments are due. If type is omitted, then it is assumed to be 0. Make sure that you are consistent about the units you use for specifying Rate and Nper. If you make monthly payments on a four-year loan at 12 percent annual interest, use 12%/12 for rate and 4*12 for Nper. If you make annual payments on the same loan, use 12% for Rate and 4 for Nper. For all the arguments, cash you pay out, such as deposits to savings, is represented by negative numbers; cash you receive, such as dividend checks, is represented by positive numbers.
Example Data Assumptions: Annual interest rate=6% (A2); Number of payments=10 (A3); Amount of the payment=-200 (A4); Present value=-500 (A5); Payment is due at the beginning of the period=1 (A6)…(see above).

Ex. Fv([A2]/12, [A3], [A4], [A5], [A6]) – returns future value of an investment with these terms (2,581.40).

IntRate

Description Returns the interest rate for a fully invested security.

Note: Dates should be entered by using the Date function, or as results of other formulas or functions.

For example, use Date(2008,5,23) for the 23rd day of May, 2008. Problems can occur if dates are entered as text. Settlement is the security’s settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer. Maturity is the security’s maturity date. The maturity date is the date when the security expires. Investment is the amount invested in the security. Redemption is the amount to be received at maturity. Basis is the type of day count basis to use.

Remark The settlement date is the date a buyer purchases a coupon, such as a bond. The maturity date is the date when a coupon expires. For example, suppose a 30-year bond is issued on January 1, 2008, and is purchased by a buyer six months later. The issue date would be January 1, 2008, the settlement date would be July 1, 2008, and the maturity date would be January 1, 2038, which is 30 years after the January 1, 2008, issue date. Settlement, maturity, and basis are truncated to integers. If settlement or maturity is not a valid date, IntRate returns the #VALUE! error value. If investment = 0 or if redemption = 0, IntRate returns the #NUM! error value. If basis < 0 or if basis > 4, IntRate returns the #NUM! error value. If settlement = maturity, IntRate returns the #NUM! error value.
Example Data Assumptions: Settlement date=February 15, 2008 (A2); Maturity date=May 15, 2008 (A3); Investment=1,000,000 (A4); Redemption value=1,014,420 (A5); Actual/360 basis (see above)=2 (A6).

Ex. IntRate([A2],[A3],[A4],[A5],[A6]) – returns discount rate, for the terms of the bond above (0.05768 or 5.77%).

Ipmt

Description Returns the interest payment for a given period for an investment based on periodic, constant payments and a constant interest rate. For a more complete description of the arguments in Ipmt and for more information about annuity functions, see Pv. Rate is the interest rate per period. Per is the period for which you want to find the interest and must be in the range 1 to Nper. Nper is the total number of payment periods in an annuity. Pv is the present value, or the lump-sum amount that a series of future payments is worth right now. Fv is the future value, or a cash balance you want to attain after the last payment is made. If Fv is omitted, it is assumed to be 0 (the future value of a loan, for example, is 0). Type is the number 0 or 1 and indicates when payments are due. If type is omitted, it is assumed to be 0.
Remark Make sure that you are consistent about the units you use for specifying Rate and Nper. If you make monthly payments on a four-year loan at 12 percent annual interest, use 12%/12 for Rate and 4*12 for Nper. If you make annual payments on the same loan, use 12% for Rate and 4 for Nper. For all the arguments, cash you pay out, such as deposits to savings, is represented by negative numbers; cash you receive, such as dividend checks, is represented by positive numbers.
Example Data Assumptions: Annual interest=10% (A2); Period for which you want to find the interest=1 (A3); Years of loan=3 (A5); Present value of loan=8000 (A6).

Ex. Ipmt([A2]/12, [A3]*3, [A4], [A5]) – Interest due in the first month for a loan with the terms above (-22.41).

Note: The interest rate is divided by 12 to get a monthly rate. The years the money is paid out is multiplied by 12 to get the number of payments.

Nper

Description Returns the number of periods for an investment based on periodic, constant payments and a constant interest rate. For a more complete description of the arguments in Nper and for more information about annuity functions, see Pv (above). Rate is the interest rate per period. Pmt is the payment made each period; it cannot change over the life of the annuity. Typically, Pmt contains principal and interest but no other fees or taxes. Pv is the present value, or the lump-sum amount that a series of future payments is worth right now. Fv is the future value, or a cash balance you want to attain after the last payment is made. If Fv is omitted, it is assumed to be 0 (the future value of a loan, for example, is 0). Type is the number 0 or 1 and indicates when payments are due.
Remark Set Type equal to 0 (or omitted) if payments are due at the end of the period. Set Type equal to 1 if payments are due at the beginning of the period.
Example Data Assumptions: Annual interest rate=12% (A2); Payment made each period=-100 (A3); Present Value=-1000 (A4); Future Value=10000 (A5); Payment is due at the beginning of the period=1 (A6).

Ex. Nper([A2]/12, [A3], [A4], [A5], 1) – Periods for the investment with the above terms (60).
Ex. Nper([A2]/12, [A3], [A4], [A5]) – Periods for the investment with the above terms, except payments are made at the beginning of the period (60).
Ex. Nper([A2]/12, [A3], [A4]) – Periods for the investment with the above terms, except with a future value of 0 (-9.578).

Npv

Description Calculates the net present value of an investment by using a discount rate and a series of future payments (negative values) and income (positive values). Rate is the rate of discount over the length of one period. Value1, value2, … are 1 to 29 arguments representing the payments and income. Value1, value2, … must be equally spaced in time and occur at the end of each period. Npv uses the order of value1, value2, … to interpret the order of cash flows. Be sure to enter your payment and income values in the correct sequence. Arguments that are numbers, empty cells, logical values, or text representations of numbers are counted; arguments that are error values or text that cannot be translated into numbers are ignored. If an argument is an array or reference, then only numbers in that array or reference are counted. Empty cells, logical values, text, or error values in the array or reference are ignored.
Remark The Npv investment begins one period before the date of the value1 cash flow and ends with the last cash flow in the list. The Npv calculation is based on future cash flows. If your first cash flow occurs at the beginning of the first period, the first value must be added to the Npv result, not included in the values arguments. For more information, see the example below. Npv is similar to the Pv function (present value). The primary difference between Pv and Npv is that Pv allows cash flows to begin either at the end or at the beginning of the period. Unlike the variable Npv cash flow values, Pv cash flows must be constant throughout the investment. For information about annuities and financial functions, see Pv. Npv is also related to the Irr function (internal rate of return). Irr is the rate for which Npv equals zero: Npv(Irr(…), …) = 0.
Example Data Assumptions: Annual discount rate=10% (A2); Initial cost of investment one year from today=-10,000 (A3); Return from first year=3,000 (A5); Return from second year=4,200 (A6).

Ex. Npv([A2], [A3], [A4], [A5], [A6]) – Net present value of this investment (1,188.44) …In the preceding example, you include the initial $10,000 cost as one of the values, because the payment occurs at the end of the first period.

Pmt

Description Calculates the payment for a loan based on constant payments and a constant interest rate. For a more complete description of the arguments in PMT, see the PV function. Rate is the interest rate for the loan. Nper is the total number of payments for the loan. Pv is the present value, or the total amount that a series of future payments is worth now; also known as the principal. Fv is the future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, it is assumed to be 0 (zero), that is, the future value of a loan is 0. Type is the number 0 (zero) or 1 and indicates when payments are due.
Remark The payment returned by PMT includes principal and interest but no taxes, reserve payments, or fees sometimes associated with loans. Make sure that you are consistent about the units you use for specifying rate and nper. If you make monthly payments on a four-year loan at an annual interest rate of 12 percent, use 12%/12 for rate and 4*12 for nper. If you make annual payments on the same loan, use 12 percent for rate and 4 for nper.
Example Data Assumptions: Annual interest rate=8% (A2); Number of months of payments=10 (A3); Amount of loan=10000 (A4).

Ex. Pmt([A2]/12, [A3], [A4]) – Monthly payment for a loan with the above terms (-1,037.03).
Ex. Pmt([A2]/12, [A3], [A4], 0, 1) – Monthly payment for a loan with the above terms, except payments are due at the beginning of the period (-1,030.16).

Ppmt

Description Returns the payment on the principal for a given period for an investment based on periodic, constant payments and a constant interest rate. For a more complete description of the arguments in PPMT, see PV (above). Rate is the interest rate per period. Per specifies the period and must be in the range 1 to nper. Nper is the total number of payment periods in an annuity. Pv is the present value—the total amount that a series of future payments is worth now. Fv is the future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, it is assumed to be 0 (zero), that is, the future value of a loan is 0. Type is the number 0 or 1 and indicates when payments are due.
Remark Make sure that you are consistent about the units you use for specifying rate and nper. If you make monthly payments on a four-year loan at 12 percent annual interest, use 12%/12 for rate and 4*12 for nper. If you make annual payments on the same loan, use 12% for rate and 4 for nper.
Example Data Assumptions: Annual interest rate=10% (A2); Number of years in the loan=2 (A3); Amount of loan=2000 (A4).

Ex. Ppmt([A2]/12, 1, [A3]*12, [A4]) – Payment on principle for the first month of loan (-75.62).

Note: The interest rate is divided by 12 to get a monthly rate. The number of years the money is paid out is multiplied by 12 to get the number of payments.

Pv

Description Returns the present value of an investment. The present value is the total amount that a series of future payments is worth now. For example, when you borrow money, the loan amount is the present value to the lender. Rate is the interest rate per period. For example, if you obtain a car loan at a 10% annual interest rate and make monthly payments, your interest rate per month is 10%/12, or 0.83%. You would enter 10%/12, or 0.83%, or 0.0083, into the formula as the rate. Nper is the total number of payment periods in an annuity. For example, if you get a four-year car loan and make monthly payments, your loan has 4*12 (or 48) periods. You would enter 48 into the formula for nper. Pmt is the payment made each period and cannot change over the life of the annuity. Typically, pmt includes principal and interest, but no other fees or taxes. For example, the monthly payments on a $10,000, four-year car loan at 12 percent are $263.33. You would enter -263.33 into the formula as the pmt. If pmt is omitted, you must include the fv argument. Fv is the future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, then it is assumed to be 0 (the future value of a loan, for example, is 0). For example, if you want to save $50,000 to pay for a special project in 18 years, then $50,000 is the future value. You could then make a conservative guess at an interest rate and determine how much you must save each month. If fv is omitted, then you must include the pmt argument. Type is the number 0 or 1 and indicates when payments are due.
Remark Make sure that you are consistent about the units you use for specifying rate and nper. If you make monthly payments on a four-year loan at 12 percent annual interest, use 12%/12 for rate and 4*12 for nper. If you make annual payments on the same loan, use 12% for rate and 4 for nper. In annuity functions, cash you pay out, such as a deposit to savings, is represented by a negative number; cash you receive, such as a dividend check, is represented by a positive number. For example, a $1,000 deposit to the bank would be represented by the argument -1000 if you are the depositor and by the argument 1000 if you are the bank.
Example Data Assumptions: Money paid out of an insurance annuity at the end of every month=500 (A2); 8% is the interest rate earned on the money paid out (A3); 20 is the number of years the money will be paid out (A4).

Ex. Pv([A3]/12, 12*[A4], [A2], , 0) – Present value of an annuity with the stated terms (-59,777.15). The result is negative because it represents money that you would pay in an outgoing cash flow. If you are asked to pay ($60,000) for the annuity, you would determine this would not be a good investment because the present value of the annuity (59,777.15) is less than what you are asked to pay.

Note: The interest rate is divided by 12 to get a monthly rate. The years the money is paid out is multiplied by 12 to get the number of payments.

Rate

Description Returns the interest rate per period of an annuity. RATE is calculated by iteration and can have zero or more solutions. If the successive results of RATE do not converge to within 0.0000001 after 20 iterations, RATE returns the #NUM! error value. For a complete description of the arguments nper, pmt, pv, fv, and type, see PV. Nper is the total number of payment periods in an annuity. Pmt is the payment made each period and cannot change over the life of the annuity. Typically, pmt includes principal and interest but no other fees or taxes. If pmt is omitted, you must include the fv argument. Pv is the present value—the total amount that a series of future payments is worth now. Fv is the future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, it is assumed to be 0 (the future value of a loan, for example, is 0). Type is the number 0 or 1 and indicates when payments are due.
Remark Guess is your guess for what the rate will be. If you omit guess, it is assumed to be 10 percent. If RATE does not converge, try different values for guess. RATE usually converges if guess is between 0 and 1. Make sure that you are consistent about the units you use for specifying guess and nper. If you make monthly payments on a four-year loan at 12 percent annual interest, use 12%/12 for guess and 4*12 for nper. If you make annual payments on the same loan, use 12% for guess and 4 for nper.
Example Data Assumptions: Years of the loan=4 (A2); Monthly payment=-200 (A3); Amount of the loan=8000 (A4).

Ex. Rate([A2]*12, [A3], [A4]) – Monthly rate of the loan with the stated terms (1%).

Note: The number of years of the loan is multiplied by 12 to get the number of months.

Sln

Description Returns the straight-line depreciation of an asset for one period.
Remark Cost is the initial cost of the asset. Salvage is the value at the end of the depreciation (sometimes called the salvage value of the asset). Life is the number of periods over which the asset is depreciated (sometimes called the useful life of the asset).
Example Data Assumptions: Cost=30,000 (A2); Salvage value=7,500 (A3); Years of useful life=10 (A4).

Ex. Sln([A2], [A3], [A4]) – The depreciation allowance for each year (2,250).

Syd

Description Returns the sum-of-years’ digits depreciation of an asset for a specified period.
Remark Cost is the initial cost of the asset. Salvage is the value at the end of the depreciation (sometimes called the salvage value of the asset). Life is the number of periods over which the asset is depreciated (sometimes called the useful life of the asset). Per is the period and must use the same units as life.
Example Data Assumptions: initial cost=30,000 (A2); Salvage value=7,500 (A3); Lifespan in years=10 (A4).

Ex. Syd([A2], [A3], [A4], 1) – Yearly depreciation allowance for the first year (4,090.91).
Ex. Syd([A2], [A3], [A4], 10) – Yearly depreciation allowance for the tenth year (409.09).

Date Functions

Date functions can be used to do calculations and formatting on date and time values.
v2019.2.35 v2020.1.18 v2021.1.6 For all of the functions below except for DateCustomFormat() and Time(), passing Null(), DbNull() or any value that resolves to Null() or DbNull(), including null in a database field will return Null(). For example, calling DateAdd("m",3,Null()) returns Null().

Date

Description Creates a date value from three numeric values.
Remark This function should be used to represent a date to other functions instead of representing a date as text.
Example Date(2012,7,4) – returns the date July 4th, 2012.

DateAdd

Description Returns the sum of a date and a quantity of time.
Remark DateAdd takes three input arguments:
  1. A string representing the interval you want to add. The interval can be “yyyy” (year), “y” (days), “d” (days), “w” (weeks), “m” (months), “h” (hours), “n” (minutes), “s” (seconds), “ww” (weeks), or “q” (quarters).
  2. A real number representing how much time you want to add to the date.
  3. A date value.
Example DateAdd('h',1,Now()) — returns the date and time 1 hour from now.
DateAdd('h',-1,Now()) – returns the date and time 1 hour ago.

DateCustomFormat

Description Modifies a date value to be output in a specified format.
Remark Defaults to MM/dd/yy format if no alternative format is specified. Cells that use this function must be formatted as Text.
Example DateCustomFormat(Date(2018,2,24), "MM-dd-yy") — returns the string “02-24-18”.

DateDiff

Description Returns the amount of time between two dates as an integer.
Remark DateDiff takes three input arguments:
  1. A string representing the interval you want to subtract by. The interval can be “yyyy” (year), “d” (days), “w” (weeks), “m” (months), “h” (hours), “n” (minutes), “s” (seconds), “ww” (weeks), or “q” (quarters).
  2. A date value that will be subtracted from the base value.
  3. A base date value.
Example DateDiff('yyyy', Date(1787,9,17), Now()) — returns the number of years since the signing of the United States’ Constitution
DateDiff('h', 14:00, 14:45) — returns 0 (zero), the number of complete hours elapsed during this 45 minute period.

DateValue

Description Converts a date represented as a string (in a .NET DateTime format) to a DateTime for further processing by the application. For example, use this function when comparing two dates.
Remark
  • If the year portion of the argument is omitted, DateValue uses the current year on the server for the year.
  • If the day portion of the argument is omitted, DateValue uses 1 for the day.
  • If the time portion of the argument is omitted, DateValue uses midnight (00:00:00) for the time.
  • If the argument is null, returns null (as notedf above)
Example
  • DateValue("30-jun-2011") — returns a DateTime object 6/30/2011 00:00:00.
  • DateValue("August 8, 2021 1:13 AM") — returns a DateTime object 8/8/2021 01:13:00
  • DateValue({Orders.OrderDate}) > DateValue(Today()) — compares the order date to today.

Day

Description Returns the day portion of a date as a whole number.
Remark Values returned by the YEAR, MONTH and DAY functions will be Gregorian Calendar values regardless of the display format for the supplied date value.
Example Day({Appointment.Date}) – returns the day of the appointment.

DayOfWeekName v2021.1+

Description Returns the name of the weekday of a date (e.g. Monday, Tuesday, Wednesday, … Sunday)
Remark Values returned are referenced from the language file.
Example DayOfWeekName(Date(2019,10,1)) — returns Tuesday since October 1, 2019 occured on a Tuesday.

DayOfWeekNumber v2021.1+

Description Returns the number of the weekday of a date, where 1 = Sunday, 2 = Monday, 3 = Tuesday … 7 = Saturday
Example DayOfWeekName(Date(2019,10,1)) — returns 3 since October 1, 2019 occured on a Tuesday.

Days360

Description Returns the number of days between two dates based on a 360-day year.
Remark Often used in accounting applications.

Days360 takes three input arguments:

  1. The first date value.
  2. The second date value.
  3. Optional: True/False indicating to use European or American method of computation. If not included the American method is used.
Example Days360({Appointment.Date}, Today()) - returns the number of days between today and the appointment date.

GlobalDateFormat

Description Returns a String value whose format is based on the session format.
Remark Only accepts data objects, parameters, and cell references as input.
Example GlobalDateFormat({Appointment.Date}) – returns the date of the appointment based on the session format.

GlobalDateTimeFormat

Description Returns a String value whose format is based on the session format.
Remark Only accepts data objects as input.
Example GlobalDateTimeFormat({Appointment.Date}) – returns the date and time of the appointment based on the session format.

Hour

Description Returns the hour of a time value ranging from 0 (12:00 AM) to 23 (11:00 PM).
Remark Times may be entered as text strings within quotation marks or as a DateTime value.
Example Hour("2:50:05 PM") – returns 14.

Minute

Description Returns the Minute of a time value ranging from 0 to 59.
Remark Times may be entered as text strings within quotation marks or a date time value.
Example Minute("2:50:05 PM") – returns 50.

Month

Description Returns the month portion of a date as a whole number, ranging from 1 (January) to 12 (December).
Remark Values returned by the YEAR, MONTH and DAY functions will be Gregorian Calendar values regardless of the display format for the supplied date value.
Example Month({Appointment.Date}) – returns the month of the appointment.

MonthName v2017.2+

Description Returns the name of the month for a given date.
Remark Accepts a full date or date formatted string, or simply an integer representing the month.
The month name is returned in the current language.
Examples MonthName(2) — returns “February”

MonthName("02/24/1991") — returns “February”

Now

Note

In pre-v2021.2.0, this function returns the current time on the server. In v2021.2.0+, this function returns the current time based on the end user’s Culture Settings in the session.

Description Returns today’s date and time (in local server time).
Remark If embedding in other functions use Now(‘false’).
Example Now() — returns the current date and time.
Now('false') — returns the current date and time formatted mm/dd/yyyy hh:mm:ss

QuarterName v2017.2+

Description Returns the fiscal quarter for a given date, as text from Q1 to Q4.
Remark Administrators can customize this function for different localities.
Example Quarter("02/24/1991") — returns “Q1”

QuarterNumber v2017.2+

Description Returns the fiscal quarter for a given date, as a number from 1 to 4.
Remark Administrators can customize this function for different localities.
Example Quarter("02/24/1991") – returns 1

Second

Description Returns the seconds of a time value ranging from 0 to 59.
Remark When a time omits seconds, 0 (zero) is assumed.

Times may be entered as text strings within quotation marks or a date time value.

Example Second("2:50:05 PM") — returns 5.

Time

Description Returns the number of ticks in a period of hours, minutes and seconds.
Remark This function should be used to represent a time to other functions instead of representing a time as text.

Time takes three input arguments:

  1. Hours
  2. Minutes
  3. Seconds
Example Time(14,50,5) – returns 534050000000.

TimeFormat1

Description Returns the time component of a DateTime nput as a time object.
Remark This function should be used to represent a time to other functions instead of representing a time as text.

Note

The return value of this function should be formatted as text. Cells formatted as General or Date may contain an erroneous placeholder date.

Example TimeFormat1({Appointment.Date}) — returns the time component of the appointment date in the format ‘hh:mm tt’.

TimeValue

Description Convert a time represented in text (i.e., “HH-mm-ss”) into time values that can be passed to other functions.
Remark Acceptable formats include “5:55 PM” and “17:55”. A time separator is mandatory (“17:00” is acceptable, “1700” is not).

If AM/PM is not present AM is assumed. When specifying AM or PM, do not use periods (“A.M.” or “P.M.” will return an error).

Note

The return value of this function should be formatted as text. Cells formatted as General or Date may contain an erroneous placeholder date.

Example TimeValue(Time(14,50,5)) – returns the time object 14:50:05.

Today

Note

In pre-v2021.2.0., this function returns the current date on the server. In v2021.2.0+, this function returns the current date based on the end user’s Culture Settings in the session.

Description Returns today’s date with no time component.
Remark If embedding in other functions use Today(‘false’).

See the Now() function to get today’s date with its time component.

Examples Today() — returns the current date.
Today('false') — returns the current date formatted as mm/dd/yyyy.

WeekOfYear v2021.1+

Description Returns the ordered number of the week in the year that a date occurs on, from 1 to 53.
Example WeekOfYear(Date(2021,05,8)) — returns 19, since May 8, 2021 occurs on the 19th week of the year.

WeekOfYear(“5/8/2021”) — returns 19, since May 8, 2021 occurs on the 19th week of the year.

Year

Description Returns the year portion of a date as a whole number, ranging from 1 to 9999.
Example Year(Today()) — returns 2011.

Arithmetic and Geometric Functions

Basic mathematical functions, as well as number field manipulation like truncation and rounding.

Abs

Description Returns the absolute value of a number.
Remark  
Example Abs(-23.1) – returns 23.1.

Acos

Description Returns the arccosine, or inverse cosine, of a number.
Remark The input must be from -1 to 1.

The returned angle is given in radians in the range 0 (zero) to pi. If you want to convert the result from radians to degrees, then multiply it by 180/Pi() or use the Degrees() function.

Example Acos(-.231) – returns 1.80390168255052.

Acosh

Description Returns the inverse hyperbolic cosine of the given number.
Remarks The input must be a real number greater than or equal to 1.
Example Acosh(10) – returns 2.993223.

Asin

Description Returns the arcsine of the given number in radians, in the range -Pi/2 to Pi/2.
Remarks The input is the sine of the angle you want and must be in the range from -1 to 1.
Example Asin(-0.5) – returns 0.5236.

Asinh

Description Returns the inverse hyperbolic sine of a number.
Remarks The input can be any real number.
Example Ex. Asinh(-2.5) – returns -1.64723.

Atan

Description Returns the arctangent, inverse tangent of a number.
Remarks The input can be any real number.

Atan returns an angle given in radians in the range -Pi/2 to Pi/2.

Example Atan(1) – returns 0.785398 (pi/4).

Atan2

Description Returns the angle from the x-axis to a line containing the origin (0, 0) and a point with coordinates (x,y).
Remarks The input requires two values, the x and y coordinates.

Note

If both x and y = 0, Atan2() returns the error #Div/0!.

A negative result represents a clockwise angle.

Example Atan2(1, 1) – returns 0.785398 (pi/4).

Atanh

Description Returns the inverse hyperbolic tangent of a number.
Remarks The input must be from -1 to 1.
Example Atanh(.76159416) – returns 1 (approximately).

Ceiling

Description Returns the number rounded up away from zero to the nearest multiple of significance, or the error #VALUE! if the argument is not a number.
Remarks The input requires two values, the number to be rounded and the multiple of significance.

Regardless of the sign of number, a value is rounded up when adjusted away from zero.

Example Ceiling(4.42,.05) – returns 4.45.

Cos

Description Returns the cosine, of an angle in radians.
Remarks The returned angle is given in radians in the range 0 (zero) to pi. If you want to convert the result from radians to degrees, then multiply it by 180/Pi() or use the Degrees() function.
Example Cos(1.047) – returns 0.500171.

Cosh

Description Returns the hyperbolic cosine of a number.
Example Cos(4) – returns 27.30823.

Even

Description Returns a number rounded up to the nearest even integer, or the error message #VALUE! if the argument is not a number.
Remarks Regardless of the sign of number, a value is rounded away from zero.
Example Even(1.5) – returns 2.

Exp

Description Returns e raised to the power of the input.
Remarks Exp is the inverse of Ln, the natural logarithm.
Example Exp(1) – returns 2.718282 (the approximate value of e).

Fixed

Description Returns the first argument rounded to the number of decimal places specified in the second argument.
Remarks Takes three arguments:

1. The number you want to round.
2. The number of digits to the right of the decimal to include.
3. (Optional) TRUE/FALSE whether to omit commas. The default is FALSE (includes commas as normal).

Example Fixed(1234.5678, 2) – returns 1,234.56.

Floor

Description Rounds the number down, toward zero, to the nearest multiple of significance.
Remarks The input requires two values, the number to be rounded, and the multiple of significance.

Regardless of the sign of number, a value is down toward zero.

NOTE. If the argument is non-numeric, then Floor returns the error #VALUE!

Example Floor(2.6, .5) – returns 2.5.

GlobalNumericFormat

Description Returns a numeric string value whose format is based on the session format.
Remarks Only accepts numeric values as input.
If Null(), DbNull() or a data field that is null is passed as the argument, the function returns Null().
Example GlobalNumericFormat({Region.Population})- returns the value based on the session format.

Int

Description Rounds a number down to the nearest integer.
Remarks The input must be a real number.
Example Int(2.6) – returns 2.

Ln

Description Returns the natural logarithm of a number.
Remarks Ln() is the inverse of the Exp() function.
Example Ln(86) – returns 4.454347.

Log

Description Returns the logarithm of a number to the base you specify.
Remarks The first input is the number and the second is the base (if omitted base 10 used).
Example Log(100) – returns 2.

Log10

Description Returns the base 10 logarithm of a number.
Remarks  
Example Log10(86) – returns 1.934498451.

Mod

Description Returns the remainder after first argument is divided by the second argument.
Remarks The second argument must not be 0.
Example Mod(27,5) – returns 2.

Odd

Description Returns a number rounded up to the nearest odd integer.
Remarks The input must be a real number. Odd always rounds away from zero.
Example Odd(1.5) – returns 3.

Pi

Description Returns the number 3.14159265358979, the mathematical constant pi, accurate to 15 digits.
Remarks  
Example Ex. Pi() – returns 3.14159265358979.

Power

Description Returns the result of the first argument raised to the second argument.
Remarks The ^ operator may be used instead of this function.
Example Power(5,2) – returns 25.

Product

Description Returns the product of the arguments.
Remarks The * operator may be used in place of this function.

Arguments must be numbers, cell references or text representations of numbers.

Example Product(5,2) – returns 10. Also 5 * 2 – returns 10.

Quotient

Description Returns the integer portion of a division.
Remarks The / operator may be used in place of this function.

This function discards the remainder of the division.

Example Quotient(5,2) – returns 2.

Rand

Description Returns an evenly-distributed random number between 0 and 1 (inclusive).
Remarks To generate a random real number between a and b, use: RAND()*(b-a)+a.
Example Rand() – returns a random number between 0 and 1.

Round

Description Returns a rounded number.
Remarks Takes one or two input:

1. The number to round.
2.  The number of decimal places desired.

Example Round(5.236, 2) – returns 5.24

Sin

Description Returns the sine of the given angle.
Remarks The returned angle is given in radians in the range 0 (zero) to pi. If you want to convert the result from radians to degrees, then multiply it by 180/Pi() or use the Degrees() function.
Example Sin(1.047) – returns .0865926611287823.

Sinh

Description Returns the hyperbolic sine of a number.
Remarks  
Example Sinh(4) – returns 27.1899171971278.

Sqrt

Description Returns the positive square root of the argument.
Remarks If the input is negative Sqrt returns the error #NUM!.
Example Sqrt(25) – returns 5.

Tan

Description Returns the tangent of the given angle.
Remarks The returned angle is given in radians in the range 0 (zero) to pi. If you want to convert the result from radians to degrees, then multiply it by 180/PI() or use the DEGREES function.
Example Tan(.785) – returns .99920.

Tanh

Description Returns the hyperbolic tangent of a number.
Remarks  
Example Tanh(-2) – returns .96403.

Truncate

Description Truncates a number to an integer by removing the fractional part of the number.
Remarks INT and TRUNC are different only when using negative numbers: TRUNC (-4.3) returns -4, but INT (-4.3) returns -5 because -5 is the lower number.
Example Truncate(9.9) – returns 9.

Formatting Functions

Apply font styling changes (bold, italic, underline) to cell contents.

Bold

Description Applies bold font weight to the input.
Example ="The second half of " & bold("this sentence is bold.")
The second half of this sentence is bold.

Italic

Description Applies italic formatting to the input.
Example ="The second half of " & italic("this sentence is italic.")
The second half of this sentence is italic.

Underline

Description Applies a single underline to the input.
Example "The second half of " & underline("this sentence is underlined.")
The second half of this sentence is underlined.

String Functions

String functions are commonly used for interpreting and manipulating text fields.

Concatenate

Description Joins several text strings into one text string.
Remark The “&” operator can be used instead of Concatenate() to join strings
Example Concatenate("This ","is ","one ","string!") – returns This is one string!
"This " & "is " & "another " & "string!" – returns This is another string!

JSONExtract v2021.2+

The JSONExtract function is documented in its own article.

Left

Description Returns the first character(s) of a text string.
Remark The first argument is the string you want to display. The second argument is number of characters you want.
Example Ex. Left(“example”, 2 ) – returns ex.

Len

Description Returns the number of characters in a text string.
Example Ex. Len(“example” ) – returns 7.

Lower

Description Converts all uppercase letters in a text string to lowercase.
Example Ex. Lower(“EXAMPLE” ) – returns example.

Mid

Description Returns a specific number of characters from a text string starting where you specify.
Remark Mid takes three input arguments:
1. The text string.2. The place you want to start.3. The number of characters you want to display.
Example Ex. Mid(“example” , 2, 3) – returns xam.

NewLine

Description Begins a new line of text.
Remark NewLine takes no arguments.
Example Ex. NewLine()

Replace

Description Replaces part of a text string.
Remark Replace takes four input arguments:
1. The text string to partially replaced.
2. The place you want to start replacing.
3. The number of characters to replace.
4. The string you want to substitute.
Example Ex. Replace(“example”, 2, 3, “*”) – returns e*ple.

Right

Description Returns the last characters in a text string.
Remark The first argument is the string you want to display. The second argument is number of characters you want.
Example Ex. Right(“example”, 2) – returns le.

Trim

Description Removes all spaces from text except for single spaces between words.
Example Ex. Trim(“This     sentence     has   weird    spacing.”, 2) – returns This sentence has weird spacing.

Upper

Description Converts text to uppercase.
Example Ex. Upper(“example”) – returns EXAMPLE.

Value

Description Converts a text string that represents a number to a number.
Example Ex. Value(“$1,000”) – returns 1000.

JSONExtract Function

Description Pick out one or more portions of a JSON input string as a single value, an array of values, a JSON object, or list of items, via a standard JSONPath expression.
Remark Takes two arguments:
  • JSONtoParse: The input JSON to parse and return the value(s) from
  • JSONPath: A JSONPath expression that describes what value(s) to return from JSONtoParse

By default, JSONExtract is done in-memory unless the system administrator explicitly sets a hidden system configuration flag to translate JSONExtract to SQL for processing in the Data Source. JSONPath is a standardized format for accessing elements of a JSON structure.

Examples
JSONtoParse = { 
	"products": [ 
		{ "name": "Côte de Blaye", "price": 263.50 }, 
		{ "name": "Ipoh Coffee", "price": 46.0 }, 
		{ "name": "Vegie-spread", "price" : 43.9 }, 
		{ "name": "Northwoods Cranberry Sauce", "price": 40 } 
	]
}

JSONExtract(JSONtoParse, "$..price") returns [263.5,46.0,43.9,40]
JSONExtract(JSONtoParse, "$..products[3].name")returns [“Northwoods Cranberry Sauce”]


JSONtoParse = {"color": "green", "code": "123"}

JSONExtract(JSONtoParse, "$.color") returns green
JSONExtract(JSONtoParse, "$.code") returns 123

JSONExtract in the Data Source

By default, the application will extract JSON in-memory. The system administrator can enable JSON extraction in the database, for those Data Sources that support it, by changing a system configuration setting. Each Data Source implements this function differently, so care should be taken when enabling this feature.

Table A below lists the supported JSONPath expressions for in-memory processing and processing in the supported Data Source types.

Table A — Supported JSONPath Expressions in Data Sources
JSONPath Feature In-Memory MySQL Oracle SQL Server 2016+
$ Yes Yes No No
$.prop Yes Yes Yes Yes
$.prop[0] Yes Yes Yes Yes
$[1,2] Yes No No No
$..recursive Yes No No No
$.prop.* Yes Yes No No
$[*] Yes Yes No No
$[3:5] Yes No No No
$[6:] Yes No No No
$[:3] Yes No No No
$[-2:] Yes No No No
$[?(@.prop == val)] No No No No
$[?(@.prop != val)] No No No No
$[?(@.prop > val)] No No No No
$[?(@.prop < val)] No No No No
$[?(@.prop >= val)] No No No No
$[?(@.prop <= val)] No No No No
$[?(@.prop =~ val)] No No No No
$[?([email protected] =~ val)] No No No No
$[?(@.prop == val && @.prop == val)] No No No No
$[?(@.prop == val || @.prop == val)] No No No No
$[?(@.prop in ['1', '2', '3'])] No No No No
$[?(@.prop nin ['1', '2', '3'])] No No No No

Notes and Exceptions

  • IBM DB2 — testing has shown this data source does not support JSONExtract although its documentation says that it does
  • PostgreSQL — no support for JSONPath syntax, so JSONExtract can only be done in-memory
  • Oracle — if the JSONPath expression selects a JSON object from within the main JSON object, the return value will be null

Logical Functions

Logical functions can be used to handle conditional information.

And

Description Returns TRUE if all its arguments are TRUE; returns FALSE if any argument is FALSE.
Remark The arguments must evaluate to TRUE or FALSE.

NOTE. The And function can take more than two arguments as input.

Example Ex. AND(2+2=4, 4+0=4, 2+3=6) – returns FALSE.False:

False

Description Returns the logical value FALSE.
Remark You can also type the word FALSE directly onto the worksheet or into a formula; it is interpreted as the logical value FALSE.
Example

If

Description Takes three arguments as input. Returns the second argument if the first evaluates to TRUE. Otherwise returns the third argument.
Remark The first input must evaluate to TRUE or FALSE.
Example Ex. if({OrderDetail.Price}= 0,’FREE’,{OrderDetail.Price}) – returns FREE if the price is 0, otherwise it returns the price.

Not

Description Reverses the value of its argument.
Remark Argument should evaluate to TRUE or FALSE.
Example Ex. Not(FALSE) – returns TRUE.

Or

Description Returns TRUE if any argument is TRUE.
Remark The arguments must evaluate to logical values such as TRUE or FALSE.

NOTE. The ‘Or’ function can take more than two arguments as input.

Example Ex. OR(2+2=4, 4+0=8, 2+3=6) – returns TRUE.

Switch

Description This function should be used instead of placing if() functions inside of if() functions.

Takes any even number of inputs arguments.

Remark The 1st argument will be the test value to compare to.

The 2nd argument will be returned if none of the comparisons return true.

The 3rd, 5th, 7th… arguments will be compared to the 1st argument. When the first match occurs the following argument will be returned.

For example if argument 3 matches argument 1 then the 4th argument will be returned.

Example Ex. Switch({Categories.CategoryName},”NOT FOUND”, “Beverages”, “Drink up!”, “Condiments”, “Enhance”, “Confections”, “Sweet Tooth”) – returns a string based on the Category Name.

True

Description Returns the logical value TRUE.
Remark You can also type the word TRUE directly onto the worksheet or into a formula; it is interpreted as the logical value TRUE.
Example

Database and Data Type Functions

Used for determining the type of information contained in a cell. Helpful for error and sanity checks.

DataRowCount

Description Returns the number of rows retrieved from the data source when executing the report.
Example Suppose report is run to retrieve basic information on 10 employees
DataRowCount() should return 10.

DbNull

Description Represents a DBNull “value”. Used most often in comparisons instead of an empty string to indicate a missing or nonexistent data value returned from a data object. DBNull applies when a result set is returned from the data object, but it doesn’t contain anything. If the data object is unable to return anything at all, Null() will be returned instead.
Example
  1. Use Conditional Formatting to suppress a row in a report if the data set returned is null.
    CellValue() = DbNull()
  2. A column in a table has no data in at all, and therefore is considered not to exist.

IsEven

Description Checks if a value is an even number. Returns True is the number is even (evenly divisible by 2), or False if it is odd.
Example IsEven(4) – returns True

IsLogical

Description Checks if a value is TRUE or FALSE.
Example IsLogical([A1]) – returns True if the cell [A1] contains TRUE/FALSE, False otherwise.

IsNonText

Description Checks if a value is not text.
Remark Non Text values include dates, numbers, images and blank cells.
Example IsNonText([A1]) – returns TRUE if the cell [A1] contains non text, FALSE otherwise.

IsNoDataQualified

Description Returns True if no data qualified for the report execution. Otherwise it returns false.
Example Suppose report is run to retrieve basic information on 10 employees IsNoDataQualified() returns false.

IsNull

Description Returns True if the argument is NULL or DbNull. Otherwise returns False.

IsNumber

Description Checks if a value is a number. Returns True if the value is a number, or False if it is not.
Remark Does not convert text to numbers. Ex IsNumber(“19”) returns False.
Example IsNumber([A1]) – returns TRUE if the cell [A1] contains a number, FALSE otherwise.

IsOdd

Description Checks if a value is odd. Returns True is the number is odd (not evenly divisible by 2), or False if it is even.
Remark Returns #NUM if the value is not numeric.
Example IsOdd([A1]) – returns True if the cell [A1] contains an odd number, False otherwise.

IsText

Description Checks if a value is text.
Example IsText([A1]) – returns True if the cell [A1] contains text, False otherwise.

Null

Description Represents a null (or Nothing in Visual Basic.NET) “value”. Used most often in comparisons instead of an empty string to indicate a nonexistent reference. Null() applies when a result a data object cannot return anything, and so it returns nothing at all. If the data object is able to return something (i.e. the SQL is executed, but the resulting data set is empty) use DBNull() instead.

Type

Description Returns the type of value.
Remark Returns 1 if the value is a number, 2 if it is text.
Example Type(“John Smith”) – returns 2.

Other Functions

CellValue

Description Returns the value of the current cell.
Remark Used in Conditional Formatting.
Example Suppose a cell of a report displays the price of products.

Ex. CellValue()> 150 returns True if the price of the product is greater than 150.

FilterValue

Description Returns the current value of a filter as a string for display purposes.
Remark Takes three arguments:
  1. The index, starting with 1 of the filter.
  2. Optional: The sub-index, starting with 1 for filters that contain multiple values (e.g. filters with an Is Between, Is Not Between, Is One Of or Is Not One Of operator). If omitted, filters with multiple values will return a comma-separated list of values.
  3. Optional: a boolean to determine if the value should be formatted following the user’s culture settings. This is used for numbers and dates.

    Note

    The optional third argument is not recommended for use in computational formulas. For more information about best practices, review the Filter Value and General Format Best Practices article.

Example Suppose the filter summary is “Order Detail.UnitPrice > ‘3.6’ and Products.ProductName is one of (‘Boston Crab Meat’, ‘Tofu’)”.

FitlerValue(1) returns 3.6
FilterValue(2) returns Boston Crab Meat, Tofu
FilterValue(2,2) returns Tofu

Hyperlink

Description Create a hyperlink to an external website. Available for all report types except for CrossTab Reports. The link will open in a new window/browser tab.
Remark Takes two arguments:
    1. The URL of the website.
    2. (Optional) the text to display in the cell.

If the second argument is omitted, the URL will display.

Note

If PDF exports open in a tab within this application, then clicking the hyperlink may direct a user to leave the application.

Note

Hyperlink() must be the outermost function in a cell. It may not be used inside conditional functions (i.e. If or Switch) or nested in other functions.

Example Hyperlink(‘www.fakeWebSite.com’, ‘click here’) returns a hyperlink that displays the text ‘click here’ . Clicking this text will open http://www.fakeWebSite.com.

LoadImage

Description Load a server side image based on the input path into the cell.
Remark Can be used to load an image dynamically in place of Report Designer’s Insert menu. The path to the image must be in quotation marks, or may be a data object field. The entire path of the image is not required if the administrator has set a value for Admin Console > General > Other Settings > ‘LoadImage’ Cell Function Parameter Prefix.

Note

LoadImage() must be the outermost function in a cell. It may not be used inside conditional functions (i.e. If or Switch) or nested in other functions.

Example Ex. LoadImage(“C:/StarryNight.jpg”)

Ex. LoadImage(“https://mywebsite.com/logo.png”)

Ex. LoadImage({Employees.Photo})

StripHTMLTags

Description Removes any HTML tags from the input string.
Remark The input must be a string in between quotation marks.
Example Ex. StripHtmlTags(“<h1>This is heading 1</h1>”) – returns This is heading 1.

ExcelFormula

Description Passes an Excel formula to an Excel report.
Remark The input must be a string in between quotation marks. Must be the outermost function in a formula.
Example Ex. ExcelFormula(“SUM(A1:A100)”) will pass the formula SUM(A1:A100) to Excel, which will evaluate the formula when the spreadsheet is opened.

PageNumber V2017.2

Description Returns the current page number for HTML, PDF, and RTF Advanced or Express Reports.
Remark Equivalent to the @[email protected] parameter.

Support for use in Chained Reports added in v2017.3.8.

Example Ex. PageNumber()

ExportType V2017.2

Description Returns the format the report is being exported as.
Remark This is useful for conditionally suppressing report sections depending on the export type.
Example ExportType()

ExpressView: Introduction (v2021.1+)

 

ExpressView is a report building tool that combines grouping, sorting, filtering, and summarizing data with a drag-and-drop interface. A chart can be added with a single click, and the entire report can be exported as PDF, RTF, CSV, or an Excel workbook.

N8tKmlMRCp.png

HNZ0PLORQL.png dZW8B6EKie.png iH9MZOyk3Z.png

ExpressViews are created in the ExpressView Designer. Depending on system configuration, ExpressView can display data live as they are edited.

Note

This section applies to ExpressView in v2021.1+ of the application. For previous versions, refer to ExpressView (pre-v2021.1)

Layout

ExpressViews are simple reports that contain Detail Fields and Groups. Consider a report that shows products organized into categories. The product name would be a Detail Field and the category would be a Group.

OPeEaZl7bg.png

A single detail field on Products.ProductName

Groups, up to 7, nest inside of each other and establish a “for each” hierarchy. Building on the above product example, by adding the product category as a Group the ExpressView now looks like this:

PH3fN48dtA.png

Products organized into their respective Categories by adding a group on Categories.CategoryName

Each Group is capable of displaying a summary for each of its component detail rows, called a Group Total. An overall Report Total is also available. Depending on the type of data in the detail rows, available aggregate functions will change but in general they are: Sum, Min, Max, Count, Distinct Count, Average or None.

SWDVglwwBR.png

Summarizing Group and Report data by aggregating group and report totals

A visualization can be added to an ExpressView with only a few additional clicks of the mouse.

TpImaxeDbu.png

A Column chart showing the number of sales each salesperson made

Anatomy of the ExpressView Designer

The ExpressView Designer consists of four main components: the Canvas, the Toolbar, the Properties Pane and the Data Objects Pane.

zvdFviQg5k.png

The ExpressView Designer in Live Data (Run) mode, including a Bar chart visualization

Canvas

The Canvas is the central component of the ExpressView Designer. The canvas is interactive, meaning data fields can be drag-and-dropped right onto it from the Data Objects Pane and arranged as desired. Visualizations may be displayed at the top, bottom or fill the canvas.

Depending on system configuration, it may be possible to work with the data in the objects on the report interactively. Click Run on the toolbar to enable Live Data mode. In this mode, as fields are added to the ExpressView canvas, they will display data immediately from the data source. When Live Data mode is enabled, this button becomes Stop. Click Stop to turn off live data mode and work “offline” with placeholder data. For very large and complex ExpressViews, keeping Live Data mode off while editing will be much faster.

Note

When in Live Data mode, data is only refreshed when an action is taken in the ExpressView Designer to do so (i.e. clicking Refresh on the toolbar or making a change to the report design or properties). It is not necessarily a “real-time” automatically updated data display.

Drop zones on the canvas prompt with available actions. For example, when creating a new ExpressView, “Drag a field on the canvas” will appear. Once at least one column is on the canvas, an “Add Group” drop zone will appear.

N4yFRvRY9q.gif

Demonstrating drop zones by dragging ProductName as a Detail Field and CategoryName as a Group from the Data Objects Pane to the Canvas

Once at least one Detail Field and one Group are added to the canvas, the drop zone prompts will disappear but the drop zones remain active.

The columns themselves also have drop zones. Additional detail fields and groups may be added to the canvas by dragging data fields from the Data Objects pane to the desired position. The drop zones on the columns highlight in blue to show where the new column will be added.

UOdnh03MCS.png

Adding UnitPrice as a detail row by dragging it to the right-hand drop zone on the ProductName detail column

XLQ7R2aA9d.png

Adding CompanyName as a group by dragging it to the left-hand drop zone on the CategoryName group column

The new column will be of the same type as the column where the data field was dropped. That is, if a new field is dropped on a detail field, a new detail field column will be created. If the new data field is dropped on a group column, the new data field will become a group.

Columns may be re-ordered by dragging them around the canvas and dropping them in the desired destination.

Instead of adding a pre-defined data field, formulas may be added as columns. Click the + Add Formula link at the top of the Data Objects Pane to add a new formula column. More information about formula columns can be found in the ExpressView: Formula Columns article.

Options for grouping, filtering and sorting both detail rows and groups can be found on the Column Menu. This menu is accessed by either right-clicking on the column or by clicking on the Column Menu MoreOptions_Black.png icon in the column’s header.

Depending on where the column type (either group or detail field) there will be different options available. In general, they are:

  • PageUp.png Move Left/Promote Group — this item will be Move Left for detail fields and Promote Group for groups. Click this option to move this column one position to the left, or promote the group up one level to the left. For more information about grouping, review the ExpressView: Grouping article. This item is disabled if the column is the leftmost column of its type. That is, if this is a detail column and the next column to the left is a group, this item will be unavailable.
  • PageDown.png Move Right/Demote Group — this item will be Move Right for detail fields and Demote Group for groups. Click this option to move this column one position to the right, or demote the group down one level to the right. For more information about grouping, review the ExpressView: Grouping article. This item is disabled if the column is the rightmost column of its type.
  • MenuGroup.png Group By This/Ungroup — this item will be Group By This for detail fields and Ungroup for Groups. Click this option to convert a detail field into a Group, or to convert a Group to a detail field. For more information about grouping, review the ExpressView: Grouping article.
  • CloseButton.png Remove Field — click this option to immediately remove this column.
  • Filter.png Filter By This — click this option to add a new Standard Filter using the field or formula in this column. For more information about filtering, review the ExpressView: Filtering article.
  • SortDescendingButton.png Sort Ascending — click this option to add a new Ascending Sort using the field or formula in this column, or change the direction of an existing sort to Ascending. Sorts are applied in the order they are added to the report. For more information about sorting, review the ExpressView: Sorting article.
  • SortAscendingButton.png Sort Descending — click this option to add a new Descending Sort using the field or formula in this column, or change the direction of an existing sort to Descending. Sorts are applied in the order they are added to the report. For more information about filtering, review the ExpressView: Sorting article.
  • MenuSorts.png Change to Primary Sort — click this option to change the sort on this detail field to be the first one. This option is only available if this column is a detail field, there is more than one sort defined, and this column is not already the first sort. For more information about sorting, review the ExpressView: Sorting article.
  • CloseButton.png Remove Sort — click this option to remove the sort on this detail field. For more information about sorting, review the ExpressView: Sorting article.
  • MenuFormula.png Quick Functions — click this option to add a Quick Function to this column. A Quick Function can quickly manipulate the data in the column. For example, choose Month Name to pick out only the name of the month from a column with a date in it. This option is only available if at least one Quick Function has been configured in the system for the data type in the column (e.g. date, numeric, string). For more information, review the Quick Functions section of the ExpressView: Formula Columns article.
  • MenuFormula.png Convert to Formula/Edit Formula — click this option to either convert from a standard column to a Formula Column, or to edit the formula on an existing formula column. For more information, review the ExpressView: Formula Columns article.

Styling the Canvas

Color Theme

A theme can be applied that will change the colors of the elements on the canvas such as the totals, column headers, data rows, borders and divider lines. Themes will also apply in certain situations when the ExpressView is exported.

2ytfXdgoqg.png

A simple ExpressView with the Lava Splash theme applied

To apply a theme to an ExpressView:

  1. Click the Canvas DashboardFormatMenu.png icon in the toolbar to open the Report Styling dialog.
  2. Choose a theme name from the Theme dropdown. A preview of the colors will appear in the Preview and the colors on the canvas will change.
  3. Close the Report Styling dialog by clicking anywhere on the canvas.
Font

To change the font of the entire report:

  1. Click the Canvas DashboardFormatMenu.png icon in the toolbar to open the Report Styling dialog.
  2. Choose a font from the Font dropdown.
  3. Close the Report Styling dialog by clicking anywhere on the canvas.
Text Styling

Individual sections of the ExpressView can have styling options (e.g. bold, italic, underline, alignment, data formatting) applied to them. Use the Selected Section tab of the Properties Pane to set those options for each desired element.

Data Objects Pane

The Data Objects Pane contains the available data objects that may be added to the ExpressView canvas. Data objects are arranged into folders. Those objects are further expanded into fields. A field is a parcel of data from a data object, such as the name of a Product or an Employee ID number.

BAwrwUtsLJ.png

Use the DataFieldSearch.png

Search Fields area to search for fields by name.

Browse through the folders of objects and expand the objects to see the fields available. Some fields may have a description associated with them. Hold the mouse over the field name to see the description.

uqnoLAbGmw.png

A field with a description that appears as a tooltip

Fields are added to the ExpressView with the methods described in the Canvas section.

Toolbar

The top of the ExpressView Designer contains tools for building and manipulating the report.

5DFdAVbkqt.png

The ExpressView Designer toolbar

  • ExpressViewRefresh.png Refresh — click to refresh the data displayed when in Live Data mode. Disabled when Live Data is turned off. More information about data modes is above in the Canvas section.
  • DashboardFormatMenu.png Canvas — set ExpressView styling options such as a color theme and a font. For more information, review Styling the Canvas above.
  • Chart — for more information about charts in ExpressView, review the ExpressView: Visualizations article
    • ShowViz.pngAdd Visualization — click to add a visualization to the ExpressView, or show an existing visualization if it is hidden
    • ShowVizActive.pngVisualization Active — indicates a visualization is part of this ExpressView and is visible
    • ShowVizRemove.png Hide Visualization — click to hide the visualization. Hiding the visualization does not delete it.
  • Save.pngSave — save the ExpressView. On the first click for new ExpressViews, this will open a dialog to enter a name, description and folder to save to. Subsequent clicks will save changes to the same location. Click the Save Dropdown DashboardMoreArrow.png icon to change the report’s name, description or folder.
  • Export.png Export — click to export the ExpressView to one of the supported file formats or save it as an Advanced Report. Choose from Excel, PDF, RTF or CSV. Depending on system and report configuration, not all file types may be available.
    • Hover over Advanced Report to convert the ExpressView to an Advanced Report. Enter a new name, choose a folder and click the Create Advanced Report button.  Review the Exporting to an Advanced Report section of the ExpressView: Exporting article for more information.
    • Click Export Options to open the Export Options menu. Review the Export Options section of the ExpressView: Exporting article for an explanation of these settings.
  • Run/Stop — click Run to start Live Data mode and view data from the data objects on the report. When Live Data mode is enabled, this button becomes Stop. Click Stop to turn off live data mode and work “offline” with placeholder data. For very large and complex ExpressViews, keeping Live Data mode off while editing will be much faster, as each modification to the report design will not re-query the data source.
  • Showing x Results — the report was generated with a partial data set and may contain incorrect calculations and aggregates. Click the link to load more data:
    • Load number more Records — get the next number of data rows and add them to the existing report
    • Load All Data — get the remainder of the data set
  • ReportSearch.png Report Search icon — click to open a panel to search for content in the report.
    zbAncAwO0X.png

    Matches for the search query will be highlighted on the report wherever it appears.

    • Search report… field — enter the search query into this textbox
    • SearchUp.png Previous — move to the previous match of the search query
    • SearchDown.png Next — move to the next match of the search query
    • CloseButton.png Close — close the search panel and clear highlighting of the matches
  • PageHome.png Go to First Page — navigate to the beginning of the report
  • PageUp.png Previous Page — go back one page to the previous one
  • PageDown.png Next Page — go forward one page to the next one
  • PageEnd.png Go to Last Page — navigate to the end of the report
  • Page Number Entry — navigate to a specific page number
  • Detail Rows — check to include all of the component records on the report. Unchecking this option can vastly increase processing speed especially when only interested in group or report-level aggregates. Checked by default.
  • Group Totals — check to include aggregate summaries for each group column on the report. Checked by default if at least one group column exists.
  • Report Totals — check to include overall aggregate summaries for each column on the report at the end. Checked by default.

Properties Pane

The Properties Pane on the right side of the Designer is broken down into four tabs:

  • SelectedCellMenu.png — Selected Section
  • SortsMenu.png — Sorts
  • FilterMenu.png — Filters
  • VizMenu.png — Visualizations

The active tab is indicated by an underlined and highlighted icon.

ayazi4EQID.png

The Filters tab is active

To collapse the Properties Pane and expand the canvas, click the active tab icon. Clicking on any icon will re-open the pane.

SelectedCellMenu.png Selected Section

The Selected Section tab is used to define the characteristics of the column and the formatting of its data.

The Display Name field is used to apply a custom name to the column in lieu of the default field name.

tvseKS9EYd.png R7d4F2vKrP.png
The Products.UnitsOnOrder detail column without a Display Name (top) and with “On Order” as a custom Display Name (bottom)

Use the Horizontal Align buttons to set the alignment of values as they appear in group columns and detail columns. Choose from Left, Centered, Right or Justified.

Choose a Font Style from the dropdown. Choose from: Normal (no font styling applied), Bold, Italic or Bold Italic. The Font Style applies only to the column header.

Use the Underline buttons to set underlining on the values. Choose from none, single or double underline. The Underline applies only to the column header.

The Data Format section has settings for manipulating the display of data in the column.

Choose a Format Type from the dropdown. Depending on the type selected, additional settings will appear

  • General — the application will attempt to format the data based on information in the system configuration for this column.
  • Number — explicitly sets the data to be a number with the following settings available:
    • Decimal Places — when checked, will force a specified number of decimal places to be displayed. The symbol inserted between the whole and fractional part of the number can also be specified.
    • Use 1000 Separator — when checked, will separate thousands places with the specified symbol
    • Use Currency Symbol — when checked, will display the specified currency symbol in front of the value (e.g. $3.14)
    • Append Percent Sign (%) — when checked, will display a percent sign (%) after the value (e.g. 3.14%)
    • Blank When Zero — when checked, if the value is zero, the cell will be blank instead of displaying zeroes
    • Show Negative Symbol — when checked, if the value is negative, will display the negative symbol in front of the value (e.g. -25)
    • Show Parenthesis — when checked, if the value is negative, will wrap the value in parenthesis (e.g. (25))
    • Color — when checked, if the value is negative, will change the value to a specified color. Click the Color Selector color-picker-icon.png icon to choose the color.
  • Date — explicitly sets the data to be a date, time or both, with the following settings available:
    • Date/Time Format — choose a date format code from the dropdown. The Number Tab section of the Advanced Reports: Cell Formatting article contains a description of each of the codes.
  • Text — no additional formatting is applied, it will appear exactly as returned from the data source

SortsMenu.png Sorts

The Sorts tab is used to edit or remove existing sorts for detail rows. For more information, review the ExpressView: Sorting article.

FilterMenu.png Filters

The Filters tab is used to add, edit or remove filters. For more information, review the ExpressView: Filtering article.

VizMenu.png Visualizations

The Visualizations tab is used to configure charts. For more information, review the ExpressView: Visualizations article.

Keyboard Shortcuts

There are several useful keyboard shortcuts available in the ExpressView Designer. They are listed in the Keyboard Shortcuts article.

Further Reading

Continue to the other articles in the ExpressView documentation:

  • ExpressView: Grouping
  • ExpressView: Aggregating/Summarizing Data
  • ExpressView: Sorting
  • ExpressView: Filtering
  • ExpressView: Formula Columns
  • ExpressView: Visualizations
  • ExpressView: Exporting

ExpressView: Grouping (v2021.1+)

 

Data may be organized in up to seven hierarchical groups. In addition to dragging-and-dropping fields to the canvas as described in the ExpressView: Introduction article, groups can be manipulated with the column menu.

Groups nest inside of each other and establish a “for each” hierarchy. In the example below, for each product category, all of the products will be listed.

AYBotH1v5j.png PH3fN48dtA.png
ExpressView with two detail fields (left) and after adding CategoryName as a group (right). Note the two products grouped under the Beverages and Produce categories.

Groups may be nested or layered together. In the example below, to see all of the model numbers for each manufacturer for each product category, two groups are needed: one on the category and one on the manufacturer. Since each manufacturer may have products in many categories, manufacturer should be the left-most or least-specific group. The product category will be nested inside of the manufacturer group so that for each manufacturer, all of the applicable categories and products in those categories are listed.

XmE7MJOsNd.png
kbf7weC4Uf.png
An ExpressView with all columns as data fields (top) then with three data fields and two nested groups (bottom)

Adding Groups

To create the first group on an ExpressView, drag a field from the Data Objects pane to the “Add Group” drop zone on the canvas.

firefox_puw4rYiOiJ.png

To change a detail field to a group, either drag-and-drop the detail field column to a Group drop zone (i.e. the Add Group zone or one of the drop zones on an existing Group column) or use the Column Menu:

  1. Open the Column Menu by either clicking on the Column Menu MoreOptions_Black.png icon or right-clicking on the column.
  2. Click MenuGroup.png Group By This. The column will be added as the right-most (most-specific) group.

Adding a Group will automatically add an Ascending Sort on that column. See the ExpressView: Sorting (v2021.1+) article for more information.

Changing Group Order

As the order of Groups is changed, they will be promoted (less specific) as they move left or be demoted (more specific) as they move right.

Groups may be re-ordered by simply dragging-and-dropping them from one Group drop zone to another, or by using the Column Menu:

  1. Open the Column Menu by either clicking on the Column Menu MoreOptions_Black.png icon or right-clicking on the column.
  2. Click PageUp.png Promote Group to promote a group to the left or PageDown.png Demote Group to demote a group to the right.

Note

Dragging a group to a drop zone on a detail field column will ungroup the column and change it back to a detail field.

Removing Groups

To ungroup a column, either:

  • drag-and drop it off of the canvas,
  • drag-and-drop it over a detail field column’s drop zone (to change the group to a detail field),
  • or use the Column Menu:
    1. Open the Column Menu by either clicking on the Column Menu MoreOptions_Black.png icon or right-clicking on the column.
    2. Do one of the following:
      • Click MenuGroup.png Ungroup. The column will be converted to the left-most detail field column on the report.
      • Click CloseButton.png Remove Field to remove the column entirely.

ExpressView: Aggregating/Summarizing Data (v2021.1+)

 

Aggregating leverages the power of ExpressView groups to compile summaries of data. Aggregates may be optionally added for each group and for the entire report.

Pre-defined aggregate functions determine how the summary is calculated. The available functions will vary with the data type in the column, but in general they are:

  • Sum — display the additive total of this column
  • Min — display the smallest or earliest value in this column
  • Max — display the largest or latest value in this column
  • Count — display the number of rows in this column. For example in the data set {1, 2, 3, 3, 4, 4} the count is 6.
  • Distinct Count — display the number of unique rows in this column. For example in the data set {1, 2, 3, 3, 4, 4} the distinct count is 4.
  • Avg — display the average of this column
  • None — do not show an aggregate for this column
KamUnWUdWj.png

Distinct Count aggregate function on the Model # column and Sum aggregate function on the Views column is computed for each group (Manufacturer and Category) as well as an overall report total

 

To show only the aggregates, uncheck the Detail Rows checkbox in the toolbar.

tlDV5naVtA.png

The same ExpressView as above, without Detail Rows

 

Adding Aggregates

Either Group Totals or Report Totals (or both) must be checked in the toolbar. Unchecking one or the other hides the respective total from view.

As numeric fields are added to the ExpressView, the Sum aggregate function will be automatically applied.

Note

Checking Group Totals enables aggregating for all groups.

To aggregate data:

  1. Click the Choose Aggregate DashboardMoreArrow.png icon in the desired group footer or report footer.
  2. Click an available aggregate function.
hTx547RWZI.png

Selecting the Distinct Count aggregate function for the Model # group column

 

wIGsLaZuuc.png

Selecting the Average aggregate function for the Wt (lbs) detail field as a report total

 

Changing Aggregates

  1. Click the Choose Aggregate DashboardMoreArrow.png icon in the desired group footer or report footer.
  2. Click an available aggregate function.

Removing Aggregates

To stop aggregating on a single column:

  1. Click the Choose Aggregate DashboardMoreArrow.png icon in the desired group footer or report footer.
  2. Click None.

To stop aggregating for a section type:

  1. In the toolbar, uncheck the respective Group Totals or Report Totals checkbox.

ExpressView: Sorting (v2021.1+)

 

Data can be ordered by applying sorts to the columns. Adding a group will automatically add a sort on the column. Detail fields may optionally be sorted.

Data can be sorted either in Ascending or Descending order. Ascending sorts start from the smallest or earliest value and end at the largest or latest value. Descending order is the opposite—starting from the largest value and ending at the smallest.

Sorting is indicated by a sort direction icon in the column header. Sorts on Detail Fields are also displayed on the Sorts tab of the Properties Pane, and can be modified from there as well.

  • SortDescendingButton.png — this column is sorted in Ascending order
  • SortAscendingButton.png — this column is sorted in Descending order
dUuk9tr0ys.png
Descending sorts on the two Category and Manufacturer Group columns and an Ascending sort on the Model # detail field column. The name column is not sorted.
60an0GR3SP.png
The Sorts tab of the Properties Pane for the above ExpressView shows only the Ascending sort on model

There may be several sorts on detail fields in an ExpressView. When there is more than one sort on ExpressView detail fields, a sort priority is formed. Consider the figure below, with two sorted detail fields: City and Country.

9tBTSUgbvc.png

One sort must be the primary sort and the others will follow in priority order. Use the Sorts tab of the Properties Pane to view and modify the priority of detail field sorts.

eoPQPqcGeg.png
Employees.Country is the primary sort, and Employees.City is the second priority sort. All records will first be sorted in Ascending order by country name, and then each city within each country will be sorted in Ascending order

Sort priority for groups is determined by the grouping order. Review the Grouping article for more information.

Adding Sorts

Groups are automatically sorted in Ascending order when they are added. If a detail field has a descending sort when it is converted to a group, the sort direction will be changed to Ascending.

To add a sort on a Detail Field:

  1. Open the Column Menu by either clicking on the Column Menu MoreOptions_Black.png icon or right-clicking on the column.
  2. Click SortDescendingButton.png Sort Ascending to sort this column in Ascending order or SortAscendingButton.png Sort Descending to sort this column in Descending order

As sorts are added to detail fields, they will be added to the bottom of the sort priority list.

Modifying Sorts

Sort order may be changed with the Column Menu for both groups and detail fields. Sort order and priority may be changed with the Properties Pane for detail fields.

To change sort direction for groups:

  1. Open the Column Menu by either clicking on the Column Menu MoreOptions_Black.png icon or right-clicking on the column.
  2. Click SortDescendingButton.png Sort Ascending to sort this column in Ascending order or SortAscendingButton.png Sort Descending to sort this column in Descending order.

To change sort order for detail fields, either:

  1. Open the Column Menu by either clicking on the Column Menu MoreOptions_Black.png icon or right-clicking on the column.
  2. Click SortDescendingButton.png Sort Ascending to sort this column in Ascending order or SortAscendingButton.png Sort Descending to sort this column in Descending order.

or

  1. Open the Properties Pane to the SortsMenu.png Sorts tab.
  2. Click either desc to sort this column in Descending order or asc to sort it in Ascending order. The currently selected direction is highlighted.

To change sort priority for detail fields, either:

  1. Open the Column Menu by either clicking on the Column Menu MoreOptions_Black.png icon or right-clicking on the column.
  2. Click MenuSorts.png Change to Primary Sort to change this column’s sort to be the primary one.

or

  1. Open the Properties Pane to the SortsMenu.png Sorts tab.
  2. Click and drag the Move Grid Row AccordionItemDragHandle.png icon to move the sort to the desired position
    ZSsKQ3kakO.png

Removing Sorts

Groups must be sorted. To stop sorting on a group column, ungroup it.

To remove a sort on a detail field, either:

  1. Open the Column Menu by either clicking on the Column Menu MoreOptions_Black.png icon or right-clicking on the column.
  2. Click CloseButton.png Remove Sort.

or

  1. Open the Properties Pane to the SortsMenu.png Sorts tab.
  2. Click the Delete Delete.png icon in the row of the sort to remove.

ExpressView: Filtering (v2021.1)


To show only data that matches certain criteria, filters can be added. Filters can also improve performance by only including relevant information. There are two kinds of filters that may be applied to an ExpressView: Standard and Top/Bottom.

Standard filters pair down data included in the report based on certain conditions. For example, “include only products in the Beverages category”. Top/Bottom filters can be used to restrict data included to only the top or bottom values. For example, “include only the top performing salesperson’s sales”, or “include only the two worst performing products”. A Top/Bottom filter can work in conjunction with standard filters or on its own.

Standard Filters

Standard Filters are comprised of three parts: the filter field, the operator and the values. To help design standard filters, consider a phrase that spells out what to include. For example: “Include only the products whose unit price is more than $10” or “Do not include any employee who was hired after 5/1/2008”.

The filter field is the data field that contains the data that will be filtered. In the above examples, the filter field would be the product ID number or employee hire date.

The operator sets the filtering action. The Standard Filters section of the Advanced Report: Filters article lists all of the available filter operators and how they work. In the above examples, the operators would be Greater Than for the products unit price and Less Than for the employee hire date.

The values are the criteria that the filter field must meet when compared by the operator. In the above examples, the values would be $10 and 5/1/2008. Some operators allow there to be more than one value.

Filter Conjunctions

Standard Filters can be combined to form complex filtering phrases. Taking the previous example a bit further, a filter can be setup to show “only the orders of products whose unit price is more than $10 AND were placed by any employee who was hired after 5/1/2008”. Note the emphasis on the word AND. To build a report that shows this kind of data, the original two filters are conjoined so that only orders that meet both criteria will apply.

Another way of combining filters is with an OR conjunction. For example, “show only the products whose Category is Beverages OR whose Category is Condiments”.

Filter conjunctions can also be combined together. Consider this complex filter phrase that uses four individual standard filters to return only service tickets that required a Return Material Authorization due to lightning or surge damage: “Include only the service tickets where the description contains ‘RMA’ OR the title contains ‘RMA’ AND the description contains ‘Lightning’ OR the description contains ‘Surge'”.

Adding a Standard Filter

Use the FilterMenu.png

Filters tab of the Properties Pane to add standard filters.
zPBtlpAGAb.png

There are two drop zones for dragging-and-dropping fields to the tab. The Meet all of the following conditions zone is for adding filters that will AND together; the and meet any of the following conditions zone is for for adding filters that will OR together. If there are filters in both of the drop zones, the two drop zones are ANDed together. For example,  the filter phrase for the figure below is “Show all of the work orders in the Service Department AND opened after 9/25/2019 AND the category is Door Entry OR Telephones”. This ExpressView would list only service tickets for problems related to door entry or telephones that were opened after September 25, 2019.

AiEI3kcHAq.png

Complex conjoined standard filter example

Standard filters may be added on data field available, including formulas.

  1. Adding a filter requires first adding the filter field, by either:
    • Dragging-and-dropping the filter field from the Data Objects Pane or from the canvas to the desired drop zone
    • Using the Column Menu:
      1. Open the Column Menu by either clicking on the Column Menu MoreOptions_Black.png icon or right-clicking on the column.
      2. Click Filter.png Filter By This. A new standard AND (meet all of the following conditions) filter will be added.

      Tip

      To use a formula as a filter field:

      1. Add a new formula column.
      2. Add the column as a filter as described above.
      3. Optionally remove the column from the report if desired. The filter will remain.
  2. Select the operator from the dropdown list. The default operator is Equal To.
  3. Directly enter or select the values to match the criteria in the filter. If the system administrator has enabled it, either:
    • click the Choose Filter Value DropDownArrow2.png icon to show a list of potential filter values, or
    • click the Choose Date Calendar.png icon to choose a date (for date type data fields only), or
    • click the Filter Function Function.png icon to choose an available filter function. Filter functions are configured by the system administrator to extend filter value functionality from a static value to a dynamic value such as “The first day of next month” or “Friday of next week”.

Examples

When implementing the example filter phrases in this section, the Filters tab of the Properties Pane will look as follows:

RgfYYSttqP.png

Show the products whose unit price is more than $10

bbaaIncY3a.png

Do not include any employee who was hired after 5/1/2008

plaNSfeOCz.png

Show the products whose unit price is more than $10 AND include only employees whose hire date is before 5/1/2008

4qiO5QSE8O.png

Show only the products whose category is Beverages or Condiments

Changing Standard Filters

Use the FilterMenu.png

Filters tab of the Properties Pane to change standard filters.

The operator and values can be changed after the filter has been created. To change the filter field, remove the filter and add a new one.

Removing Standard Filters

Use the FilterMenu.png

Filters tab of the Properties Pane to remove standard filters.

Click the Delete AccordionDeleteItem.png

icon in the top-right corner of the filter element. The filter will be instantly removed.

Top/Bottom Filters

Top/Bottom Filters, also known as Top N Filters can be used to filter the report to show the top or bottom values or aggregated summary of a field. For example: “Show only the best performing 2 salespeople in each region” or “Show the 5 smallest times to complete the manufacture of each model”. Top/Bottom filters can also be used to sort by aggregate and create a ranked list. For example, to list the Top 40 songs played on a radio station.

Note

Top/Bottom filtering is always done in memory. Therefore, they should be combined with standard filters when possible to improve performance for very large datasets.

  1. Check the Limit the report to the top/bottom values checkbox.
  2. From the Top/Bottom dropdown select either Top to show the largest or latest values or Bottom to show the smallest or earliest values.
  3. Enter an integer into the # field to specify the desired number of values (e.g. enter 2 to see the top 2 or bottom 2 values).
  4. Choose what to compare.
    • Values — display the top N data values
    • (aggregate function) — if there are groups on the ExpressView, choose one of the available aggregate functions, to display the top N of the aggregate. The available functions will differ based on the columns on the report.
  5. Select the data field or group field to filter from the Of… dropdown.

To optionally filter the top/bottom values of each group on the report, called a For Each Group:

Caution

Adding a For Each group will run the sort N times, where N is the number of Top or Bottom values to include in step 3 above. This may drastically negatively performance for large data sets.

  1. Click the AddBtn.png Add Group button.
  2. Select one of the groups to group by from the dropdown list.

To remove a For Each Group click the Delete Dropdown DropdownDelete.png icon.

ExpressView: Formula Columns (v2021.1+)

ExpressViews are an easy way to display and visualize data. Custom formula columns extend the pre-defined data.

Note

This section applies to ExpressView in v2021.1+ of the application. For previous versions, refer to ExpressView (pre-v2021.1)

In addition to using the data fields that are available in the Data Objects Pane, formulas may be added as custom formula columns. Formulas may contain data objects, parameters and functions.

Just like standard columns, a formula column may be either a detail field or group, and may be included in visualizations, formatted, sorted and filtered.

To add a formula column to an ExpressView:

  1. In the Data Objects Pane, click the + Add Formula link at the top. A new column will be added to the report and the Formula Builder will appear.

    01taZ5GgXR.png

    Formula Builder with a formula that returns the year portion of a date detail field.

  2. The Selected Section tab of the Properties Pane will open with the available functions that may be used to build a formula.
    1. Either Search for a function, or expand the function categories to browse the available functions:
      1. Arithmetic — basic mathematical functions, as well as number field manipulation like truncation and rounding.
      2. Database — used for determining the type of information contained in a cell. Helpful for error and sanity checks.
      3. Date — can be used to do calculations and formatting on date and time values.
      4. Financial — common methods for monetary calculations such as interest and depreciation.
      5. Formatting — applies bold, underline, or italic formatting to the input.
      6. Logical — can be used to handle conditional information.
      7. Other — miscellaneous functions
      8. String — commonly used for interpreting and manipulating text fields.
      9. Parameters — a listing of the available system parameters that may be used in the formula
    2. Hover the mouse over a function name to see a description of it and how to use it.
      VrVgZQkpzn.png
    3. Either drag-and-drop the function name, or double-click the function name to add it to the Formula Builder.
  3. Click the Apply Changes 01taZ5GgXR2.png icon to apply the formula to the column, or Discard Changes 01taZ5GgXR3.png to cancel.

The formula column is now added to the ExpressView, and can be manipulated just as any other column on the report.

Formula Components

Formulas may contain any combination of data objects, parameters and functions.

Data Objects

To add a field to the formula, either:

  • drag it from the Data Objects Pane to the Formula Builder
  • double-click the field name in the Data Objects Pane while the Formula Builder is open
  • type its name into the Formula Builder

Data objects must always be enclosed in curly braces. For example, {Orders.OrderId}

n6AnIIw5gR.png

Formula Builder with a single data object in it

Parameters

Parameters are system-wide variables that may be referenced in formulas. To add a parameter to a formula:

  1. Type @ into the Formula Builder, and a list of available parameters will appear.

    nn5xZfl4TB.png

  2. Either double-click the parameter in the list, or use the arrow keys to highlight the desired parameter and then press Enter on the keyboard.

Parameters are case-sensitive and must always be enclosed by @ symbols. For example, @[email protected]

kCKqNm5T1V.png

Formula Builder with a single parameter in it

A special type of parameter called a dropdown parameter can be created by the system administrator. These parameters have two values: the Value, used by the server for processing and the Display Value that appears in cells and is used in formulas. These distinct values can be accessed with @[email protected] and @[email protected] respectively. For more information, consult with the system administrator.

Functions

Functions are mechanisms built-in to the application that take an input and return an output. For example, there is a square root function that given an input number will return the square root of the number. For example, Sqrt(4) returns 2.

Many functions can be used together in a formula.

A list of all available functions and operators along with descriptions and examples of how to use them can be found in the List of Functions article.

Some examples of functions in formulas:

{Employees.LastName} & ", " & {Employees.FirstName}

Concatenate employee’s last name and first name in a single column, using two fields

Year({Orders.OrderDate})

Get only the year portion of an order date, from the Orders.OrderDate field

If(@[email protected] = "Admin", {Manufacturers.name}, {Manufacturers.manufacturer_id})

Using a combination of parameters, functions and data objects to display the name of a manufacturer in a column to the administrator, or an obfuscated ID number to all other users

Quick Functions

Quick Functions are pre-defined calculations or operators that transform the fields in either detail fields or group columns. For example, the Month Name quick function applied to a date column will transform the column to only the name of the month of that date. Quick Functions can be used in lieu of building a full formula column, work in conjunction with a formula, or work on a standard detail field or group column by themselves.

There are several built-in Quick Functions, and the system administrator has the ability to add or remove functions from the list:

  • Day of Month — Gets the day of the month from a date, as a one or two digit number
  • Day of Week — Gets the name of the weekday of a date
  • Week of Year — Gets the ordered number of the week in the year that a date occurs on, from 1 to 53
  • Month Name — Returns the name of the month
  • Year, Month Name — Returns the year and month name of a date. For example, 2020 - September
  • Quarter — Returns the fiscal quarter of a date in the typical Q1, …, Q4 style
  • Year, Quarter — Returns the year and quarter name of a date. For example, 2020 - Q3
  • Year — Gets the year component of a date, as a four digit number
  • None — remove the Quick Function from the column and return it to a standard detail field or group column

With a Quick Function on a column, it may be sorted, filtered, aggregated and included in a chart just as any other column type.

Behind the scenes, a Quick Function works like a pre-set formula column. Quick functions have a display formula and a sort formula. The display formula is applied to the data as it is displayed in the ExpressView Designer, in exported files and it is the value that is compared when filters are applied to a column. The sort formula is activated when a sort is applied to a column. This allows a column to be sorted on a different quantity than the display formula. For example, the Day of Week quick function will display names of weekdays, but will sort the column in chronological order instead of alphabetical order (i.e. Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday).

O8cgJ99eJP.png

An ExpressView with one group column, one detail column on the OrderDate field, and a detail field with the Day of Week quick function applied to OrderDate as it appears in exported Excel file

When an ExpressView is exported to an Advanced Report, the quick functions will be broken down into their component display and sort formulas. The display formula will appear on the report, and if an applicable sort had been added to the ExpressView, the sort formula will be added to the end of the Advanced Reports sort list.

O30phOV4VG.png

The DayOfWeekName Display Function appears in column B of the Advanced Report Designer

xFNqSV1R3K.png

The DayOfWeekNumber Sort Function is added to the end of the Advanced Report’s Sorts list

Using a Quick Function

  1. Open the Column Menu by either clicking on the Column Menu MoreOptions_Black.png icon or right-clicking on the column.
  2. Point to MenuFormula.png Quick Functions.

    Note

    The Quick Functions menu item will only be available if there are quick functions configured in the system for the data type in the chosen column. For example, there must be Quick Functions that work on date columns if the chosen column contains a date.

  3. Click the name of the desired Quick Function to add to the column.

The name of the Quick Function will appear in the column header.

Vj7311cbb8.png

The Day of Month Quick Function has been applied to this Group column on Orders.OrderDate

When a Quick Function is applied to a formula column, the quick function will apply to the data after the formula. For example, the formula DateAdd("d",3,{Orders.OrderDate}) combined with the Day of Month Quick Function will display the name of the day of the week three days later than the OrderDate. If the order was placed on Tuesday, the column will display Friday.

Removing a Quick Function

Follow the steps in Using a Quick Function above. At step 3, choose None.

Quick Functions will also be removed from a formula column if the formula is changed in a way that the formula returns a different data type than the data type the Quick Function applies to. For example, if a formula that returns a date is changed to one that returns a string, the Quick Function will be removed from the column.

ExpressView: Visualizations (v2021.1+)

Visualizations, also known as charts or graphs allow data to be showcased in a visual format. They allow data to be scanned quickly for patterns and trends. Charts can be easily made and customized in ExpressViews, in as little as one click.

85aBFZxgwS.png
A 3D Pie Chart visualization with pastel custom coloring showing the percentage of sales made by each salesperson, with a tooltip showing the exact percentage for Margaret Peacock

Note

This section applies to ExpressView in v2021.1+ of the application. For previous versions, refer to ExpressView (pre-v2021.1)

Table of Contents

Use the links below to skip to the applicable section of this article.

  1. Adding a Visualization
    1. Type
    2. Data
      1. Labels
      2. Values
    3. Appearance
      1. Chart Titles
      2. Chart Colors
      3. Chart Data
  2. Interactive Editing
    1. Drilling Down
    2. Editing a Chart Directly
  3. Suggested Reading

Adding a Visualization

To add a chart to an ExpressView:

  1. Click the Add Visualization ShowViz.png icon in the toolbar. A bar chart is added and populated with the data from the ExpressView automatically.
  2. On the VizMenu.png Visualizations tab of the Properties Pane, select the type of chart you want to use. The chart immediately swaps to that type. Choose from Bar and Column, Pie and Other Single-Series, Line and Area or Miscellaneous. Review the Type section below for more information about each type.

There are three small icons in the lower-right corner of the visualization that determine where on the canvas the chart will appear. Choose from:

  • VizTop.png / VizTopSelected.png — the chart will appear on the top of the canvas; report data will be on the bottom
  • VizBottom.png / VizBottomSelected.png — the chart will appear on the bottom of the canvas; report data will be on the top
  • VizFull.png / VizFullSelected.png — the chart will fill the canvas; report data will be hidden

Use the VizMenu.png

Visualizations tab of the Properties Pane to customize the visualization:

Type

Choose one of the available chart types to display. Charts are organized into four general categories. Click each type name for additional information.

  • Bar and Column
  • Pie and Other Single-Series
  • Line and Area
  • Miscellaneous
    • Scatter/Zoom Scatter
    • KPI

Data

Labels

The Labels field is a group of data values, for each iteration of the group represented as a series on the chart. For example, using the Product Category group field as the label field represents each category as a series.

SZwqbvTALc.png
A Bar chart with one label field on the product category, showing the number of products in each category

Several chart types allow more than one label field. This is useful for nested groups, which represent common series measured across several groups. For example, to compare the number of products in each category manufactured by a particular manufacturer, a nested manufacturer field can be added as a second label.

CJkGCM29MW.png
A Bar chart with two label fields: one on the product category, and the other on the manufacturer’s code number showing the number of products in each category made by each manufacturer

To add a chart label, either:

  • Drag a data field from the Data Objects Pane onto the chart and release on the Add Label drop zone.
    pMM462tVb6.png
    Adding LastName as a label by dragging it to the drop zone on the chart
  • In the VizMenu.png Visualizations tab, click the Data tab. Either:
    • Drag a data field to the Labels drop zone.
    • Click AddBtn.png Add Label, then select a field from the Field list.
FunDSPjRQo.png
Adding LastName as a label by dragging it to the drop zone in the Properties Pane

Values

The Values fields are the data values to plot on the chart for each iteration of each labels group. For example, the products per category.

Several chart types allow for multiple values fields. This is useful if there are common series to be measured across several groupings, and the values fields are in the same data row. For example, the number of products per category and the number of views of those products on the online shopping site.

NgIpzPNWlE.png
A Stack Bar chart with two values fields: one on the distinct count of model numbers and the  sum of views in the online shopping cart system for each category

To add a chart value, either:

  • Drag a data field onto the chart and release on the Add Value drop zone.
    kf3HGoEeyx.png
    Adding OrderId as a value by dragging it to the drop zone on the chart
  • In the VizMenu.png Visualizations tab, click the Data tab. Either:
    • Drag a data field to the Values area.
    • Click AddBtn.png Add Value, then select a field from the Field list.
Fkz7n86TF4.png
Adding OrderId as a value by dragging it to the drop zone on the Properties Pane

Appearance

Set the styling for the Chart Titles, Chart Colors and Chart Data:

Chart Titles

3XxptcVH0W.png

Add a main title and subtitle, as well as X-Axis and Y-Axis labels in this section. Each title may have a unique font, color and size.

Chart Colors

wmZd82SEoa.png

Select a palette to color the chart elements with. Choose from:

  • Theme — a variety of named color themes are available (e.g. Blue Gray, Emerald Forest, Prismatic Wave, etc…)
  • Linear Range — choose a starting and ending color. The application will interpolate intermediate colors for 3 or more chart elements as needed.
  • Custom — the color of each element may be explicitly specified by manually choosing colors

Check the Use 3D Style checkbox to enable a three-dimensional effect on the chart elements.

cYwCnlWLNb.png
rWOVTVgobO.png
A multi-value Column chart with Use 3D Style unchecked (top) and checked (bottom)

Chart Data

Use the Data Axis Min Value and Data Axis Max Value fields to set the minimum and maximum values for the axes. All values in the chart must be above the Data Axis Min Value and less than Data Axis Max Value otherwise this setting will be ignored. These settings can help make a chart easier to read. For example:

64oF71vAXv.png
q9wqqu8jOo.png
The same line chart without (top) and with (bottom) min and max values set

Use the Exclude Values Less Than and Exclude Values Greater Than settings to exclude values outside of the set range from appearing on the chart.

Use the Sort By dropdown to apply a secondary sort to the chart that will affect the order Values are added to the visualization. Choose from Ascending or Descending order by selecting from the dropdown. The options available will differ by chart type, but in general they are:

  • Report Order — data points are added to the chart in the order they appear on the report
  • Data Labels — data points are sorted by their Labels
  • Data Values — data points are sorted by the Values

Point Labels will display the exact values of each point on the chart. Different chart types will have different options available, but in general they are:

  • Series Values or Point Value — display the value of the values or point
  • Percent of Series Values or Percent of Point Value — displays the percentage of the whole represented by this value or point
  • Data Labels or Point Label — display the names of the Labels represented by each segment of the chart
  • Data Labels with Data Values or Point Label with Point Values — combine the behavior of both Data Labels and Series Values modes to place both pieces of information in the label

For some charts, the Point Labels may be positioned with the Label Position setting. Choose from:

  • Auto: allow the application to select the best orientation for you based on available space
  • g68qOn5XeZ.pngSlant: rotate the labels 45-degrees along the axis
  • sKYCRS3Dta.pngWrap: texts wraps to a new line
  • niDP7gwXFf.png Stagger: values are staggered along two lines so they don’t overlap
  • 7YBRqc1t7H.png Rotate: rotate the labels 90-degrees along the axis
  • Sm9YGoPcF6.png None: do not apply any change to labels, they may overlap

To include a Legend on the chart, click either Right or Bottom. Choose None to remove the legend.

The Number Format settings determine how numbers appear on the axes and in the Point Labels (if applicable):

  • Decimal Places — will force a specified number of decimal places to be displayed. The symbol inserted between the whole and fractional part of the number can also be specified.
  • Use 1000 Separator — when checked, will separate thousands places with the specified symbol
  • Use Currency Symbol — when checked, will display the specified currency symbol in front of the value (e.g. $3.14)
  • Append Percent Sign (%) — when checked, will display a percent sign (%) after the value (e.g. 3.14%)

Interactive Editing

Drilling Down

When Live Data (Run) is enabled, click on a chart series to drilldown the data to that series.

Note

Because some of the data is hidden in this mode, totals and other calculations may not be accurate.

OwtFHQFsDu.png
Clicking the Fuller series highlights only that series in the chart, and shows only those records that comprise that section of the chart

Several series may be drilled at the same time.

THUVespRlS.png
Drilling into both the Condiments and Grains/Cereals categories highlights them on the chart and shows their applicable records

Click AccordionDeleteItem.png

Clear selected points to remove the drilldown and return to the original report design.

Editing a Chart Directly

Right-click on a chart to open the interactive menu.

ng7POhmtzp.png
Chart interactive menu

Choose from:

  • Type — change the chart from one type to another as in the Type section of the Properties Pane. Only charts of the same series type may be selected. That is, if the chart is a multi-series type of chart only other mutli-series charts may be selected.
  • Theme — change the color palette of the chart as in the Chart Colors section of the Properties Pane
  • Legend Location — change the location of the legend
  • Sort By — change the sort order on the chart as in the Chart Data section of the Properties Pane
  • Invert Data — swap the data fields on the X and Y axes

Suggested Reading

Additional resources may prove helpful when working with ExpressView and ExpressView Visualizations:

  • Charts

ExpressView: Exporting (v2021.1+)

 


ExpressViews are an easy way to display and visualize data. Exporting an ExpressView allows the contents of the report to be saved externally as either a PDF, Excel, RTF or CSV file. The system administrator may restrict the available file types, so all may not be available in all environments.

ExpressView may also be exported into an Advanced Report, where it may be further edited with the Advanced Report Designer.

For all export types except CSV, data as it is arranged in the ExpressView Designer and a visualization (if applicable) will be in the output file. Since CSV is a text-only format, visualizations cannot be exported in that format.

Formatting options set in the Canvas menu and the styling options (e.g. bold, italic, underline, horizontal alignment) will apply to PDF, RTF and Excel exports (only if Keep Cell Styling in Excel is checked in the Export Options menu)

Exporting to a File

There are several ways to export an ExpressView:

  • From the Report Tree
    • Default Action
    • Report Options (right-click) Menu
  • From the ExpressView Designer’s Export menu
  • From the Scheduler Service

Report Tree

There are two ways to export an ExpressView directly from the Report Tree without first opening the ExpressView in the Designer.

If the ExpressView’s Report Tree Shortcut setting is set to Export Report:

  1. Click the default export type in the Report Tree.
UXehTPLvho.png

Click PDF to export this ExpressView as a PDF directly from the Report Tree

Or, open the Report Options menu by either clicking the Menu hamburgermenu.png icon or right-clicking on the ExpressView item in the list. Choose from one of the available actions:

  • Export As
  • Schedule Report
  • Email Report

For more information, review the Right-Clicking on Reports section of the Navigating the Application article.

Designer Export Menu

  1. Click the Export Export.png icon in the ExpressView Designer toolbar.
  2. Choose an available export type.

Scheduler Service

When an ExpressView is executed on a schedule by the Scheduler Service, the resulting output will be an exported file. See the Scheduling an ExpressView section below for more information.

Scheduling an ExpressView

Note

The Scheduler Service is an optional feature. Contact your system administrator for assistance.

An ExpressView can be scheduled to execute on a schedule. When executed by the Scheduler Service, the ExpressView will be exported as one its available export file types.

Review the Scheduling Reports article to learn how to schedule a report.

Examples

Consider the below ExpressView with two groups, several detail fields and a simple visualization.

8cf1J5flOQ.png

Files can be exported in a format that either resembles the report layout, or in a format that may be easily imported into another system. Reports exported as PDF and RTF always resemble the report layout. Excel and CSV exports have options to change the data export mode. These options are discussed further in the Other Options section of this article.

Report Layout

eNUJRnGo0T.png

Report exported as a PDF file

mGVpA2lWve.png

Report exported as an RTF file

kOyVUCGPE9.png

Report exported as an Excel file with Keep Cell Styling in Excel enabled and Flatten Groups in Excel and CSV disabled

CSV files support text only, so visualizations cannot be rendered in them.

"Product Models, Weights and Views","","","",""
"Category","Mfg Code","Model #","Product Name","Views"
"","","Distinct Count","","Total"
"","","","",""
"Covers & Chassis","","2"," ","7"
"","21","2"," ","7"
"","","211-1525","Cover, 8-Key Clear","6"
"","","115-6961","Mounting Bracket/Plate for 110-2250A","1"
"Knobs","","4"," ","15"
"","21","1"," ","13"
"","","440-264","Knob, Silver and Black with Pointer","13"
"","25","1"," ","0"
"","","440-61","Knob, black",""
"","40","2"," ","2"
"","","440-418","Knob, large","2"
"","","440-417","Knob, small",""
"Switches","","3"," ","8"
"","25","2"," ","3"
"","","680-334","Switch, SPST pushbutton","3"
"","","680-629","Switch, pushbutton (pair)",""
"","44","1"," ","5"
"","","680-655","Switch, Power","5"
"Transformers","","3"," ","1"
"","21","3"," ","1"
"","","710-4258","Transformer,  Power 27Vdc .25A","1"
"","","710-4227","Transformer, Power",""
"","","710-4321","Transformer, Power",""
"Report Totals","","12"," ","31"
Report exported as an CSV file with Flatten Groups in Excel and CSV disabled

For Easy Import

When groups are flattened in Excel and CSV exports, groups become columns that repeat for each row of data. This is helpful when importing the data into another system that requires, for example, the name of the product category to accompany the rest of the product’s information on each line of the file. Groups are flattened by a setting in the Export Options section, more information is below.

Caution

When groups are flattened, group and report totals will be removed from the report output.

Mhd16sPXJj.png

Report exported as an Excel file with Flatten Groups in Excel and CSV enabled

CSV files support text only, so visualizations cannot be rendered in them.

"Product Models, Weights and Views","","","",""
"Category","Mfg Code","Model #","Product Name","Views"
"To render a chart, please uncheck ""Flatten Groups in Excel and CSV"" under ""Export Settings"" in the Settings menu","","","",""
"Covers & Chassis","21","211-1525","Cover, 8-Key Clear","6"
"Covers & Chassis","21","115-6961","Mounting Bracket/Plate for 110-2250A","1"
"Knobs","21","440-264","Knob, Silver and Black with Pointer","13"
"Knobs","25","440-61","Knob, black",""
"Knobs","40","440-418","Knob, large","2"
"Knobs","40","440-417","Knob, small",""
"Switches","25","680-334","Switch, SPST pushbutton","3"
"Switches","25","680-629","Switch, pushbutton (pair)",""
"Switches","44","680-655","Switch, Power","5"
"Transformers","21","710-4258","Transformer,  Power 27Vdc .25A","1"
"Transformers","21","710-4227","Transformer, Power",""
"Transformers","21","710-4321","Transformer, Power",""
Report exported as an CSV file with Flatten Groups in Excel and CSV enabled

Export Options

When building an ExpressView that will be exported, the Export Options should be considered to set certain characteristics of the exported output.

To change the export settings, from the Export.png

Export menu on the toolbar, hover over Export Options.
giZslS2jw7.png

ExpressView Export Options dialog

The export settings are arranged in three groups: export types, page and style and other.

Export Types

The Export Types section determines how exporting is accessed through the application.

  • Types Allowed — uncheck any file types that the report should not be exported to. The default is for all file types to be checked.

    Note

    The system administrator can restrict the availability of certain export file types, so all four types may not be available.

  • Report Tree Shortcut — choose the action that is available when selecting the report in the Report Tree. Choose Default to use the behavior set by the system administrator, Run Report to execute the report in the ExpressView Designer or Export Report to export the report in the Default Export Type. The default setting is Default.
    WFsYKafpJP.png
    UXehTPLvho.png
    Report Tree item for an ExpressView with Report Tree Shortcut set to Run Report (top) and Export Report (bottom)
  • Default Export Type — choose the export file type that will be used by default when exporting directly from the Report Tree or when scheduling the report’s execution with the Schedule Wizard. Choose Default to use the file format set by the system administrator, or explicitly choose a file format. The default setting is Default.

Page and Style

The Page and Style section determines the size of the pages in Excel, PDF and RTF exports.

  • Page Size — choose the page/paper size. Choices are common named US and ISO paper sizes (e.g. Letter, Legal, Tabloid, A4, etc…) The default value is Letter.
  • Orientation — choose either Portrait or Landscape page orientation. The default is Portrait.
  • Fit Content to Page Width — check this box to stretch the contents to the available width of the page. The default value is checked.
    A0sryAVkGM.png
    W6o1S3MqWY.png
    An ExpressView on a wide paper size with Fit Content to Page Width unchecked (top) and checked (bottom)

    Note

    This setting only controls whether or not the content will expand to fit a page that is wider than the data. Exported data will always compress to fit in the available page width if the page is smaller than the data.

  • Flatten Groups in Excel and CSV — choose how to handle the inclusion of group headers in the exported data for Excel and CSV file outputs. When checked, the groups are “flattened”. Groups become columns that repeat for each row of data. When unchecked, the groups remain in their hierarchical positions, and only appear when they change. The default value is checked.

    Caution

    When groups are flattened, group and report totals will be removed from the report output.

    kOyVUCGPE9.png
    Mhd16sPXJj.png
    An ExpressView exported to Excel with Flatten Groups in Excel and CSV unchecked (top) and checked (bottom)

    Caution

    Enabling Flatten Groups in Excel and CSV on an ExpressView that doesn’t have Detail Rows visible (unchecked on the toolbar) will result in an empty output file.

  • Keep Cell Styling in Excel — choose to either retain or remove styling such as font, and background color when exporting to Excel. The default value is checked.
    kPzyauGDE8.png
    nWEEpTFTUU.png
    An ExpressView exported to Excel with Keep Cell Styling in Excel checked (top) and unchecked (bottom)

Other

The Other Options determine additional content and behavior in the output.

  • Include Setup Info — choose to include information about sorts, filters and data objects that are included in the report. Choose from:
    • No — additional setup information is not included in the output file
    • Top — additional setup information is included at the beginning of the output, before the report content
    • Bottom — additional setup information is included at the end of the output, after the report content
  • ‘No Data Qualified’ Mode — choose what action should be taken if there is no data that qualifies to be included in the output (e.g. a filter excludes all possible rows). The default value is Show Message. Choose from:
    • Show Message — display a message in a dialog box that no data is qualified for the report. Stop execution and do not return any file.
      Foh3nKFNda.png
    • Show Report — continue with report execution and return a file with the report headers and footers but without any data.
      7tne3s66gP.png

Exporting to an Advanced Report

To export an ExpressView to an Advanced Report:

ipZYYMg9zh.png
  1. Click the Export.png Export menu on the toolbar. Hover over Advanced Report.
  2. Provide a report name in the Name field for the Advanced Report.

    Note

    Even though the new report will be of a different type, it must have a unique report name.

  3. Select a Folder to save it to in the report tree browser.
  4. Click Create Advanced Report.

The Advanced Report Designer will open with the newly created report for immediate editing.

Report Viewer

This document covers several versions of the application. Use the Viewing content for dropdown to see only the content relevant to a specific application version.

Executing an Advanced Report or CrossTab Report presents the data output in a paged, interactive format called the Report Viewer. Paging through, searching, filtering, sorting, conditional formatting chart and map interactivity are all available in the Report Viewer. Changes made to the report can be saved to the original report, a new report or a customized “user report”. Basic report viewing is also supported on mobile devices.

cBf6kYxjwS.png

The interactive Report Viewer (v2021.1+)

To run a report in the Report Viewer either:

  • From the Report Designer, click Run on the toolbar. Depending on system configuration, this will also save the report.
  • From the Report Tree, select the report then either:
    • click the Run â–º icon (if available), or
    • click the Menu screen.report_tree_menu.png icon or right-click and then â–º Run Report.

The Report Viewer opens in a new tab, indicated by the viewer â–º

icon. Making any changes in the Report Designer requires running it again in a new Report Viewer tab.

Prompting Filters and Parameters

Some reports may contain filters or parameters that prompt for a value to be provided when the report is run. In this case, a dialog will appear asking for a value to be displayed.

XgjUi1nGLU.png

Prompting parameter dialog

  1. For each parameter or filter, enter a value into the Value field by either:
    • entering the value directly into the text field
    • choose a value from the dropdown list, if available.
    • click the Formula Function Formula.png icon to select a value based on a formula function, if available.
    • click the Date Selector Calendar.png  icon to choose a date, if the parameter expects a date value
  2. Click Run Report to execute the report with the provided values, or Cancel Run to cancel the report’s execution.

For filters, the report builder has the option of choosing what fields and controls are available in the prompt. The full filter dialog may appear, or a simplified version with or without the ability to change the filter operator may appear.

iB9N9ryp4J.png

Simple prompting filter dialog without operator. This is considered “without operator” because the operator cannot be changed in this dialog.


If the filter has an Is One Of operator, values may be selected from the top dropdown in the Value column. A value may be manually entered and then added by clicking on the Add Value AddItem.png icon.

Anatomy of the Report Viewer

The Report Viewer is divided into three sections: the toolbar, the interactive dock and the canvas.

Toolbar

Use the toolbar for paging or searching through the report’s contents, saving changes made to the report in the Viewer and exporting the report to a downloadable file such as PDF, Excel, RTF or CSV. The system administrator can enable or disable certain features, including the entire toolbar, so not all options shown below may be available.

Tip

Select the correct version number from the Viewing content for dropdown in this article to show only the relevant options.

5NkKqy7JJn.png

Report Viewer toolbar (v2021.1+)

  • PageHome.png First Page — skip to the first page of the report
  • PageUp.png Previous Page — turn back one page
  • PageDown.png Next Page — advance one page
  • PageEnd.png First Page — skip to the last page of the report
  • Showing x Results (v2021.1+) — the report was generated with a partial data set and may contain incorrect calculations and aggregates. Click the link to load more data:
    • Load x more Records — get the next x of data rows and add them to the existing report
    • Load All Data — get the remainder of the data set
  • ReportModified.png DropDownArrow2.png Edit (v2021.1+) — save or clear any changes to the report made with the features described in the Interacting With Reports and Customizing Report Output – Creating User Reports sections below.
    • Save Changes…
      • to This Report — save any changes made back to this report
      • as New Report — save any changes made to the report as a new report with a new name and folder
      • as User Report — save any changes made to the report as a user report
    • Clear Changes
      • Styling Only — clear only styling changes made with the conditional formatting/filtering popup to the report
      • Column Only — unhide all hidden columns, reset custom column widths and remove any active column sorts
      • Delete User Report — delete the user report if one exists
      • Clear All — clear changes made with the conditional formatting/filtering popup dialog, unhide any hidden columns, reset custom column widths, remove active column sorts
  • Export.png DropDownArrow2.png Export (v2021.1+) — export the report as a downloadable file such as PDF, Excel, RTF or CSV. Not all file types may be available depending on report and system configuration.
  • Find Text (v2021.1+) — search the report data for text entered into this field. Text that matches the search will be highlighted. Use the Search Up SearchUp.png and Search Down SearchDown.png icons to move between results that match the search text. Click the Clear SearchBoxClearButtonBold.png icon to remove the search from the report.

Interactive Dock

The interactive dock optionally contains filters, sorts and column view controls. The dock can appear on the left or right side of the Report Viewer by default. It can also be disabled on a per-report or per-system basis.

gSSjf9xqPR.png

The Interactive Dock is displayed on the left side of the window in this figure


The dock contains different modules based on the system and report settings: columns, filters, sorts and conditional filters.

Click the Open Dock DockExpand.png (v2021.1+) icon to open the dock to manage the modules and their settings. Click the same icon to hide the dock.

FilterIcon.png Filters

Interactive filters added to the report will appear in this section. They are added in the Report Designer for exclusive use in the Report Viewer. Changes made to the filters can be saved as a user report.

Some filters may appear as soon as the dock is opened, others can be added as needed with the Add button (v2021.1+).

03zmsO21Wv.png

Filters module (v2021.1+) with two filters: a multiple choice filter for Country, and a range slider for Birth Year


To remove an interactive filter, click the Remove Filter AccordionDeleteItem.png (v2021.1+) icon.

SortIcon.png Sorts

The sorts on the report optionally are exposed in this module, available to be switched from ascending or descending order.

To change the direction of a sort, click the corresponding Sort Ascending SortAscendingButton.png

or Sort Descending SortDescendingButton.png icon.
6LH74Pz1de.png

Sorts module (v2021.1+) with two sorts: a descending sort on Categories.CategoryName and an ascending sort on Products.ProductName

||| Columns

Selectively hide or unhide columns from an Advanced Report’s output by checking or unchecking the corresponding checkboxes. The visibility of columns can be saved as a user report.

Note

This module is unavailable if a CrossTab appears on the report.

Doyg242rXs.png

The E-Mail and CC Type columns are hidden from the report but Country, Name, Join Date and Favorite Color are visible

FilterIcon.png Conditional Filters

Conditional Filters are those added to the Report Viewer with the conditional formatting/filtering popup dialog. Conditional filters can be saved to a user report.

E439Xu2yI564546.png

Conditional formatting/filtering popup dialog


G6GlpcP1bv.png

Conditional Filters module (v2021.1+) with two filters: one enforcing the color choice to be blue, the other credit card type to be MasterCard


To remove a conditional filter, click the Remove Filter AccordionDeleteItem.png (v2021.1+) icon. The module will disappear once all conditional filters have been removed from the report.

Canvas

The canvas is the main viewpoint for the data presented in the report. The canvas consists of the column headers which appear as boxes above the report layout, and the report layout/data itself.

kfVGfGsZsd.png

Mouse hovering over the column headers/control boxes at the top of the report canvas pre-v2021.1


See Managing Data Columns below for information about interacting with the column headers. See Interacting With Reports for information about interacting with the data, charts and maps that appear on the report’s layout.

Interacting With Reports

There are a number of ways to interact with reports in the Report Viewer. Available options depend on how the report was designed and the type of content in it.

Tip

If the report has Linked Action Events, there may be more interactive features than aren’t listed in this article. Consult with the system administrator or the user who designed the report for more information.

Drilling Into Data

Some reports allow drilling down into cells or charts to see additional data related to the field selected. If a cell or chart has a linked report (a.k.a. drilldown), click on one of the values to see the related data.

Linked Reports are actually other reports that can be interacted with or even export to a file. Linked Reports may even have drilldowns of their own!

QVI2PoIFoV.gif

Clicking on an Order ID drills down into the line items included on that order with a linked report. Note the mouse cursor changes to a hand versus an arrow indicating that the order ID is clickable.

Expanding Collapsed Rows

Some reports have collapsed rows that can be seen by expanding them. Collapsed rows are indicated by the Open Rows OpenRows.png

icon. Click on the icon to expand the row. Click the icon again to collapse it. Right-click the icon to open a menu to do the following:
  • Expand / Collapse — expand or collapse the outer group
  • Expand / Collapse Group — expand or collapse the group and any inner groups
  • Expand / Collapse All — expand or collapse all outer and inner groups on the report

screen.reportviewer_expanded_row.png

Expanding a data row

Visualization Features

Visualizations have a number of interactive features depending on the type of chart. For example, line charts and bar charts allow hiding series, axes can be turned on or off for multi-axis charts and the slices of pie charts can be pulled out and rotated . Charts can also show some additional information in a tooltip when hovered over. Heatmaps may optionally display up to 5 additional data series in a tooltip when hovering over a cell.

See Styling Charts below for additional information about changing a chart’s style in the viewer.

screen.reportviewer_toggle_chart_series.gif

Toggling a chart series on or off


KI22MOQT89.gif

Rotating a pie chart and pulling out its segments by clicking on them

Drilling Into Maps

Google Maps are fully interactive geographic visualizations. Review the Interacting with Google Maps Visualizations section of the Google Maps article for full details.

96N8pssBYQ.gif

Drilling down from country, to state, county and street address level by double-clicking on the Google Map


On a GeoChart, click on a highlighted region to drill down into the region. Click [Back] to return to the previous view. Learn more in the Interacting with GeoChart Visualizations section of the GeoCharts article.
EHHwXgBkgP.gif

Drilling down from world view to the United States, then selecting Washington state, then viewing the map detail for the cities Seattle and Kirkland on a GeoChart

Customizing Report Output – Creating User Reports

The Report Viewer allows for changes to the style, formatting and data presented on the report. These changes can be saved to the original report, to a new copy of the report, or as a user report. Review Toolbar above for details how to save report changes.

A user report is a customized version of a report that is specific to a specific end user. User report changes are saved separately from the report design, and will only show when that user runs the report themselves. These can be useful for making changes to read-only reports. More information about user reports can be found in the User Preferences and Context Sensitive Help article.

Note about cookies

User reports may be stored locally in the web browser. Clearing the browser cache will remove any user report customization. Contact the system administrator for additional information.

Styling Data

Right-click a cell to open the conditional formatting/filtering popup. Use this dialog to set custom formatting based on the data meeting certain criteria.

E439Xu2yI564546.png

Right-clicking a cell to change its styling


For group cells with dynamic data from fields or formulas, use the Conditional Filter list (default value is Apply to all) to apply styling to only the data that meet a certain condition. For each of the following options, styling applies to the cells of the same type in the group that meet the specified condition:

Tip

Select a condition before changing the styling.

  • Apply to all — apply universally to all of the cells in this column
  • Apply to equal values — All cells with the same value as the clicked cell
  • Apply to unequal values — All cells with different values than the clicked cell
  • Apply to greater values — All cells with values greater than the clicked cell (larger number, later date, or alphabetically subsequent)
  • Apply to greater than or equal values — All cells with values greater than or equal to the clicked cell
  • Apply to lesser values — All cells with values less than the clicked cell (smaller number, earlier date, or alphabetically preceding)
  • Apply to less than or equal values — All cells with values less than or equal to the clicked cell

The styling options available are:

  • firefox_tcQGlUp2Qs.png Font
  • biboE1bpKN.png  Font Size
  • ForegroundColor.png Text Color
  • BackgroundColor.png Background color
  • LSvUJXVq1t.png DecorationNormal.png DecorationUnderline.png DecorationDoubleUnderline.png Text decoration
  • AlignLeft.png AlignCenter.png AlignRight.png AlignJustify.png Horizontal and AlignTop.png AlignMiddle.png AlignBottom.png Vertical Alignment
  • WrapText.png Wrap Text

Styling applies to all cells of the same type in the column; affected cells are outlined by a goldenrod border.

Conditional Filters

Clicking the EditFilter.png

Conditionally Filter icon will add a new conditional interactive filter to the report and open the Interactive Dock (if not already open), filtering the detail rows by the criteria selected in the dropdown. This icon is only active for choices other than Apply to All. See Interactive Dock and Conditional Filters above.

Styling Charts

Note

The Chart Options menu is supported for all chart types except heatmaps.

Right-click a chart (or click the Chart Options ChartOptions.png icon on mobile) to open the Chart Options menu. Using this menu you can swap to a different Type of chart, change the color Theme, change the location of the Legend, and change the Sort order of the data series. These settings can be saved as a user report.

8aSF9xct3h.png

Changing a column chart to a stacked bar chart with Chart Options menu

  • Type — change the chart from one type to another as in the Type tab of the Chart Wizard. Only charts of the same series type may be selected. That is, if the chart is a multi-series type of chart only other mutli-series charts may be selected.
  • Theme — change the color palette of the chart as in the Colors section of the Chart Wizard’s Appearance tab.
  • Legend Location — change the location of the legend
  • Sort By — change the sort order on the chart as in the Other Options section of the Chart Wizard’s Data tab.
  • Invert Data — swap the data fields on the X and Y axes

Managing Data Columns

Each column on the report has a light gray column header/control box. These headers can be optionally turned on or off from the Report Designer. Changes made here can be saved as a user report.

Change the width of the columns by clicking and dragging the line between column headers left or right.

J4FPxBhmAe.png

Resizing a column


To hide a column, either:
  • right-click the column header, then click DeleteReportSmall.png Hide Column from the menu
  • use the Interactive Dock’s Columns module to uncheck the column (not available for CrossTabs)

ZiRxmNAkfr.png

Right clicking a column to hide it


To unhide a column, either:
  • right-click the column header, then click either PreviousBtn.png Unhide Column to Left or NextBtn.png Unhide Column to Right from the menu
  • use the Interactive Dock’s Columns module to check the column (not available for CrossTabs)

Some columns may have an additional column sort that is either active when the report is executed, or can be made active by clicking on the column header. Column sorts are applied after the sorts defined in the Report Designer’s Sorts dialog. If there are multiple columns with column sorts defined, only one may be active at any given time.

Clicking the column header will cycle through the available options: no column sort, ascending column sort, descending column sort.

oM5MqD1FRR.png

Column header (pre-v2021.1 on top, v2021.1+ on bottom) with no column sort applied


Cji1a8aIOl.png

Column header (pre-v2021.1 on top, v2021.1+ on bottom) with an ascending column sort applied


LErfRs8aTo.png

Column header (pre-v2021.1 on top, v2021.1+ on bottom) with a descending column sort applied

Report Designer (v2021.1+)

 

The Report Designer is the main editor for Advanced and CrossTab Reports. A full suite of reporting and design tools with a spreadsheet-like interface is available.

exxZG9IvCZ.png

The Advanced Report Designer

Reports may be sorted, grouped and filtered on data from several sources. The flexibility of the Designer allows for simple reports as well as very complex reports with many calculations, graphics, charts, maps and interactivity to be created. Advanced Reports can link to other reports for drilling further down into background data. Files (also known as templates) may be uploaded to the Designer to dynamically fill form fields or automatically include data in documents.

The Advanced Designer is comprised of several different parts: the Data Objects Pane, the Toolbar, the Formula Bar and the Design Grid.

Data Objects Pane

The Data Objects Pane on the left side of the Designer contains the available data objects that may be added to the report’s design grid. Data objects are arranged into folders. Those objects are further expanded into fields. A field is a parcel of data from a data object, such as the name of a Product or an Employee ID number.

Data Objects Tree

e9ErhBY5Fp.png

Use the Search Fields area to search for fields by name.

 

Browse through the folders of objects and expand the objects to see the fields available. Some fields may have a description associated with them. Hold the mouse over the field name to see the description.

uqnoLAbGmw.png

A field with a description that appears as a tooltip

 

More information can be found in the Advanced Reports: Data Objects article.

Toolbar

The toolbar contains the buttons and menus used to modify the report. Modifications can include aesthetic formatting, inserting formulas and images, linking reports, and much more.

The v2021.1+ Report Designer toolbar, with mouse pointer hovering the Format Cells icon

The v2021.1+ Report Designer toolbar, with mouse pointer hovering the Format Cells icon

The system administrator has the ability to hide or show specific menu options and toolbar items. Some items may not be available.

  • Undo.png Undo — most actions on a report can be undone by clicking this icon or pressing Ctrl + Z on the keyboard.

    Note

    Changing filters, sorts, joins, data objects and other items from the menus are not undo-able.

  • Redo.png Redo — undone actions can be redone by clicking this icon or pressing Ctrl + Y on the keyboard.
  • FilterMenu.png Filter — open the Report Filters dialog to create, modify or remove Filters, which limit the data on the report based on criteria. Full details on filtering can be found in the Filters article.
  • SortsMenu.png SortARToolbar.png Sorts — open the Report Sorts dialog to create, modify or remove Sorts, which order data on the report. Sorts are also required for utilizing Groups, a type of section. Full details on sorting and grouping can be found in the respective Sorts and Sections articles.
  • + Insert — insert an item into the selected cell. Choose from:
    • bar graph Chart — add a graphical visualization (e.g. a bar chart, line graph, pie chart). See the Charts article.
    • gauge Gauge — add a gauge visualization (e.g. a thermometer or angular dial gauge). See the Gauges article.
    • globe GeoChart — add a basic geographical map visualization. See the GeoCharts article.
    • map pin Google Maps — add a fully interactive geographical map visualization. See the Google Maps article.
    • Crosstab.png CrossTab — add a dynamically expanding pivot table. See the CrossTab Reports article.
    • MenuImage.png Image — add an image file to the cell
    • fx Formula — add a formula to the cell using the Formula Editor. See the Formulas section.
  • LinkedReport.png Linked Report — link this cell dynamically to another report, to drill into background data. See the Linked Reports (Drilldowns) article.
  • LinkedAction.png Linked Action Event — link an Action Event to this cell. Action Events are custom bits of functionality created by the system administrator that respond to certain actions such as clicking on icons or parts of a chart. This is an advanced feature, contact the system administrator for assistance.
  • SuppressDuplicates.png Suppress Duplicates (pre-v2021.1.1) / Hide Repeated Values (v2021.1.1+) — enable this feature to hide duplicated values from appearing after one another in a report. See the Dealing with Duplicate Values article.
  • sigma AutoSum — to quickly get a total on a data field, place the field in a Report or Group Footer section then click this icon. Do not use AutoSum on a cell with an aggregate formula such as aggSum.

    Caution

    Aggregating some Data Sources and data types, such as floating point columns in Google BigQuery sources, may cause non-deterministic results due to limitations in the Data Source.

  • gear v Advanced — access additional option dialogs to control advanced features of the report
    • View.png Report Viewer Options — open the Report Viewer Options dialog to control display options, interactive filters and sorts
    • General.png General Options — open the Report Options dialog to control execution, exporting, filter window and page display options
    • Custom.png Custom Options — open the Custom Options dialog for setting the value of extensibility options. This is an advanced feature, contact your system administrator for assistance with it.
    • JoinOption.png Joins — open the Joins dialog to define how the data objects on the report relate to one another. See Joins for more information.
    • GeneratedSQL.png Show SQL — view the generated SQL query which retrieves the data used on the report. See Show Generated SQL.
    • Template.png Templates — setup document templates and forms. See Templates.
    • ExecutionCacheOptions.png Execution Caching — allows the data from a report execution to be cached so that reports can be viewed more quickly and with less stress to the data source
    • Event.png Events — link a Server Event to the report. Server Events are custom bits of functionality created by the system administrator that occur when certain application triggers occur such as when the report is loaded, saved or during the execution cycle. See the Events section of the Advanced Options article.
    • Parameters.png Parameters — define reusable system variables, called Parameters, on the report. See Report-Level Parameters.
  • Save.png v Save Report — save the report to the system. On the first click, or by clicking the dropdown arrow icon, provide a name, optional description, optional filter description (if enabled) and folder to save the report to.
  • Export.png v Export Report — save the report as a downloadable PDF, Excel, RTF or CSV file.
  • run_button.png Run — execute the report in the application’s Report Viewer.
  • CacheInvalid.png / CacheValid.png Execution Caching — the data displayed on this report comes from a cache that is periodically updated. Click the Cache Invalid CacheInvalid.png icon to manually update the cache. When the Cache Valid CacheValid.png icon is displayed, the cache is valid. A report may only be run when the cache is valid.
  • FormatPaintbrush.png Format Paintbrush — select a cell to copy the formatting from, click this icon and then click another cell to copy the formatting to
  • FormatCells.png Format Cells — open the Format Cells dialog to change data formatting, borders and conditional formatting settings. See Cell Formatting.
  • BackgroundColor.png Background Color — select a cell, then click this icon to change the cell’s background color with the color chooser.
  • ForegroundColor.png Foreground Color — select a cell, then click this icon to change the cell’s foreground/text color with the color chooser.
  • F6z29Y8e4q.png Font and Font Size — select a cell, then click the dropdown to choose a different font. Use the up and down arrows to change the size of the font, or enter a number directly.
  • StyleBold.png Bold — select a cell, then click this icon to change the font weight to Bold. Click again to remove bold weight.
  • StyleItalic.png Italic — select a cell, then click this icon to change the font style to Italic. Click again to remove italic styling.
  • StyleUnderline.png v Underline — select a cell, then click this icon to change the font style to change the font style to Underlined. Click again to remove underline styling. Click the dropdown arrow icon to choose the underline type, either Single or Double.
  • AlignCenter.png Horizontal Alignment — select a cell, then click this icon to change the horizontal alignment of the content of the cell. Choose from:
    • AlignLeft.png Left
    • AlignCenter.png Center
    • AlignRight.png Right
    • AlignJustify.png Justified
  • AlignMiddle.png Vertical Alignment — select a cell, then click this icon to change the vertical alignment of the content of the cell. Choose from:
    • AlignTop.png Top
    • AlignMiddle.pngMiddle
    • AlignBottom.png Bottom

Formula Bar

4Uaubx6Lx4.png

A formula may be added to cells by directly entering them into this formula bar. Click the Formula EditorFormulaLarge.png

icon in the bar to open the Formula Editor for assistance building the formula. Just as when entering formulas directly into cell content, formulae should be prefixed with an equals sign.

Examples

={Orders.OrderDate}
=AggCount({Products.ProductName})
=[A5]

Additional Resources

For more information about formulas, review these articles:

  • What are formulas?
  • Formula Basics
  • Formula Editor

Design Grid

The Report Designer works in a spreadsheet-like interface with content residing in cells arranged into rows and columns. Cells may contain plain text, data from data objects, formulas, images, charts, maps and gauges.

The Design Grid can be broken down into sections that dictate more finite control of how and where content appears on the finished report. Available section types include Page Header, Report Header, Group Header, Detail, Repeating Groups, Group Footer, Report Footer and Page Footer.

XsM6RZuNXI.png

The Design Grid of an Advanced Report with five sections including a heatmap visualization, a suppressed detail section and a group footer

More information can be found in the Advanced Reports: Design Grid and Advanced Reports: Sections and Advanced Reports: Cell Formatting articles.

Advanced Reports: Data Objects (v2021.1+)

A data object is a container for reportable information from a source of data. For example, a payroll report may include an Employees data object with census data such as names, addresses and hire dates as well as a Time data object with clock-in and clock-out times for each employee’s shift start and end.

When creating a new Advanced Report, data objects will be added to the report with the Add Data Objects dialog, which will appears when launched for the first time.

8FxvMmq3rt.png

The Add Data Objects dialog can be recalled at any time by clicking the Vector.png

Manage Data Objects button in the Data Objects Pane.

Data Objects Dialog

The Data Objects Dialog consists of two main parts:

  • the available data objects tree on the left side
  • the selected data objects panel on the right side

Available Data Objects Tree

The data objects tree on the left side of the dialog shows all of the available data objects that can be added to a report. A Search… field at the top of the tree allows searching for data objects by name.

huUUJd3fPq.png

There are two data objects in the Northwind folder of this data objects tree: Categories and Products

If the system administrator has enabled it, custom SQL statements may be added as a data object in lieu of selecting one of the existing objects. For more information, refer to the Custom SQL Objects section of this article.

Selecting a Data Object from the list and clicking on the View Data Object Details Information.png

icon will display the names of the fields that are available in that object.
w7pc9HG2YU.png

CompanyName, Phone and ShipperID are fields available in the Shippers data object

Selected Data Objects Panel

The selected data objects panel on the right side of the dialog is where the added data objects appear and is divided into three or four columns depending on system configuration.

8FxvMmq3rt2.png

Three data objects have been added to this report: Categories, Products and Orders

  • Suppress Duplicates (pre-v2021.1.1)/Hide Repeated Values (v2021.1.1+) — check this checkbox to hide repeating values on the report. For more information, review the Dealing with Duplicate Values article.
  • Data Object Name — the name of the data object as it appears in the available data objects tree and the system configuration
  • Alias — this column is only available if the system administrator has enabled it. When this column is present data objects can be added more than once. This allows, for example, joining the fields on the duplicate data object to other objects, or to itself in ways other than what the system administrator has defined. For more information, refer to the Advanced Reports: Joins article. Each data object must be referenced by a unique alias. The alias can also be used to provide a different name for the data object.
  • X icons — click the Delete X icon on the corresponding row to remove the data object from the report.

Add, Edit or Delete Data Objects to/from a Report

The instructions below assume that the Add Data Objects dialog is already open on screen.

  • To add a data object to a report, first choose the data object from the available data objects tree and then either:
    • click the arrow icon to the right of the object’s name
    • click the Add2.png Add button at the bottom of the tree
    • double-click on the data object’s name
    • drag-and-drop the data object from the tree to the selected data objects panel
    • click the Add2.png Add SQL button to add a custom SQL object to the report. There may not be any other data objects in the selected data objects panel for this button to have an effect. For more information, refer to the Custom SQL Objects section of this article.
  • Click the Custom SQL Object SQL.png icon in the Data Object Name column to edit it. Only Custom SQL Objects can be edited from the Add Data Objects dialog.
  • Click the Delete X icon on the corresponding row to delete a data object,. This removes the data object from the report, but not from the system configuration.

Custom SQL Objects

This is an advanced feature, and the system administrator must enable it for it to be available.

Caution

If a Custom SQL Object is added as a data object to a report, it may be the only data object on that report.

Custom SQL Objects may only be added to new report, not an existing report.

5HG87d9rVS.png

Custom SQL Object dialog in v2021.1.15+

Writing Custom SQL Objects requires underlying knowledge of the data source architecture and its relevant SQL language.

To add a Custom SQL Object to a report:

  1. Click the Add2.png Add SQL button in the Add Data Objects dialog to open the Custom SQL Object dialog.
  2. Provide a unique Object Name for the new data object. It cannot match any existing data object in the system configuration nor contain any of the following characters, including spaces: [ ] { } . , @
  3. Choose the Data Source that this Custom SQL Object will retrieve data from. Not all data sources in the system may support Custom SQL objects.
  4. In the large code window (shown with a line number 1 in the figure above), enter the full SQL statement. This statement will be inserted as a subquery when it is sent to the data source for processing.

    Caution

    ORDER BY clauses and Common Table Expressions are not supported in subqueries. To sort a report with a Custom SQL Data Object, use the Sorts dialog in the Report Designer.

  5. System variables called parameters, that change based on certain environmental situations (e.g. who is running the report) may optionally be added to the SQL statement by selecting the name from the dropdown and clicking the Add2.png Insert Parameter button.To add a new report-level parameter to the report, and the system administrator has enabled it, first click the New Parameter button to open the Report Parameters dialog (v2021.1.15+)
  6. Click the Test Checkmark.png icon to check the SQL statement for validity.
  7. Click the Unique Key Fields list to select unique keys for the custom SQL object. Select the columns that uniquely identity a record in this object.
    QXpD7SSqsy.png
    1. Click the Add2.png Add button to add a unique key field to the list.
    2. Select the name of the field from the dropdown, or click the Delete X icon to remove it.
    3. Once all unique key fields are defined, click Okay.
  8. Click Okay to close the Custom SQL Object dialog and save the object to the Add Data Objects dialog.

To edit a Custom SQL Object:

  1. Click the Vector.png Manage Data Objects button in the Data Objects Pane to open the Add Data Object dialog.
  2. Click the Custom SQL Object SQL.png icon in the Data Object Name column to open the Custom SQL Object dialog.
  3. Follow the instructions in the add a Custom SQL Object section above to edit the object.

Example

The following Custom SQL Object could be used to generate the basic report shown below with order IDs and dates of each order placed by each salesperson in the company in a certain month.

SELECT
	dbo.[Orders].[OrderID] AS c0,
	dbo.[Orders].[OrderDate] AS c1,
	dbo.[Employees].[FirstName] AS c2,
	dbo.[Employees].[LastName] AS c3,
	dbo.[Employees].[EmployeeID] AS c4,
	dbo.[Orders].[EmployeeID] AS c5
FROM dbo.[Employees]
INNER JOIN dbo.[Orders] ON (
	dbo.[Employees].[EmployeeID] = dbo.[Orders].[EmployeeID]
)
WHERE 
	Month(dbo.[Orders].[OrderDate]) = 7

Employee Sales report

Output of the report

Advanced Reports: Sections (v2021.1+)

 

The sections of an Advanced Report define its appearance and pattern. Specifically, sections determine how frequently cell contents are repeated.

The appearance of a report is based on data that is not necessarily known at the time it is made. Reports are usually not fixed designs—the data, and the relationships it describes, are dynamic. Knowing which sections are suitable for different types of content is crucial for designing the best possible report.

Types of Sections

There are two general types of sections: Static and Dynamic. The difference is in the repetition of their cells.

The cells in a static section do not repeat according to the report data. Static sections are best used for information that is not related to data rows. For example, defining column headers that describe the type of data in each field, or a page number at the bottom of each page.

The cells in a dynamic section repeat according to the data that is returned to the report. Dynamic sections are suitable for showing content related to that data. For example, cells in a Detail section repeat for every composite data row in the report.

Static Sections

Report Headers, Page Headers, Page Footers and Report Footers are categorized as static because they do not repeat according to the data in the report; although they may repeat by other means. These sections are best used for report metadata. They can also be useful for boilerplate elements, such as logos, copyright notices, titles or disclaimers.

A typical report may have a report header with the title of the report, a page header with labels for each column, a page footer that uses the PageNumber() function or @[email protected] parameter to number the pages, and a report footer with summary information.

Page Header & Page Footer

The rows in the Page Header section appear at the top of every page of a report, and the rows in the Page Footer section appears at the bottom of every page of a report. Typically, the Page Header section is used to designate column headers for a report, and the Page Footer section is used to display the page number and/or confidentiality notices for a report.

Page Headers and Page Footers are not intended to perform calculations or display data fields. For this reason, a Page Header populated with a data field will only return the first line of data in that field; a Page Footer will return only the last line of data.

Page breaks are usually caused when the data in dynamic sections overflows the length of the page, determined by the Page Size and Orientation settings in the report’s General Options. Manual page breaks may also be added.

mYSNWjnh18.png

A report with a Page Header section in the Report Designer

x23LmnInpj.png

The “Company Orders” page header appears on top of each of the three pages in the report output

Tip

Excel and CSV export types have no pages. Page sections function the same as Report sections for these export types.

Even though page sections repeat, they are not considered dynamic sections because their repetition does not directly depend on the data. Thus they are not suitable for displaying data fields. Since there is no way of knowing ahead of time which data will appear on which page, these sections are not suitable for summarizing data with aggregates or visualizations.

A report may only have one page header and one page footer section, but each section may consist of multiple rows.

Report Header & Report Footer

Report Header and Report Footer sections appear once each, at the start and end of the report, respectively. Use these sections for introductory and concluding information. The report footer is ideal for summarizing all of the report data with aggregate formulas and visualizations.

Note

Report Headers appear below Page Headers.

gZlR1EJNBg.png

A report with both a Report Header and a Report Footer section in the Report Designer

dFOAGteZmR.png

The “Product Pricing Information” Report Header and the Combination Chart in the Report Footer appear only once, at the start and end of the report, respectively.

A report may only have one report header and one report footer section, but each section may consist of multiple rows.

Dynamic Sections

Groups, Repeating Groups and Detail sections are categorized as dynamic because they repeat according to data in the report. These sections are best used for displaying and grouping data from data fields. Dynamic sections comprise the bulk of most tabular reports. Charts, maps, and gauge visualizations reference data fields in the dynamic sections.

The key for knowing how to use dynamic sections is knowing how the data will repeat in relation to the rest of the report.

Detail Sections

The rows in the Detail section repeat for each data row retrieved from the Data Object, and is the main section of most reports.

Detail sections are typically used for showing the actual data values. This is the main area of display for the bare report data. Aggregate formulas usually reference cells in the Detail section.

Uu06LMlkC5.png

A simple report design with a Detail section containing Product ID, Name and Unit Price data fields

ERuX2baWu1.png

The Detail section expands to include all of the Product rows that match each Category so that the ID, Name and Unit Price of each product is displayed in the report

The number of rows that are displayed can be limited by using filters, duplicate suppression/hide repeating values and advanced join logic.

A report may only have one detail section, but it may consist of multiple rows. To have more than one detail section, use Repeating Groups.

Group Header & Group Footer

Groups are the primary way in which data is assembled into related categories that each share a unique attribute. Detail rows are arranged into the groups they belong to. The common attribute is defined by a sort.

The rows in a Group Header section will appear above the Detail section for each unique value of the sorted Data Field, or a formula. Typically, Group Header sections are used to display data as labels.

The rows in a Group Footer section will appear below the Detail section for each unique value of the sorted Data Field. Typically, Group Footer sections are used to calculate subtotals.

ISA2Kl6X2n.png
Adding a Group Header section to the previous example will group each product by it’s category.
HwDW64mPFK.png

Products are now organized into groups based on their Category.

For each sort, the group can change on either on either the Data Object/Unique Key or the Sort Field.

  • When grouping on a Data Object, the group breaks at each new instance of the data object’s unique key.
  • When grouping on a Sort Field, the group breaks at each new value of that field.

BcxslAGD5m.png

 Adding a Group Header section on a sort field v2021.2+

1ktM6WbnLI.png

For example, instead of grouping by each Product, you may want to instead group by product quantity, so that products that are low or out of stock are grouped together. First, add a sort on the Products.Quantity field, then group by that field.

There may be multiple group sections, to add additional levels of stratification to the report. Each group requires a corresponding sort.

Tip

The order of the sorts has an effect on the way the data is arranged. Data is sorted by the first field, then any ambiguities are sorted by the second field, then any remaining ambiguities are sorted by the third, and so on. In general, order group headers by their associated sorts, and group footers in inverse order.

Repeating Groups

Repeating Groups are a way to organize and display data that contain multiple one-to-many relationships. Each repeating group has data from “many” category, grouped by the “one” category. The following diagrams demonstrate how this works.

Two Data Objects, X and Y, with a one-to-many relationship from X to Y, will display like so in a Detail section:

custom.1M_detail.png

Each X has 1 or more Y. Category X has duplicates suppressed/repeating values hidden  — this is similar to grouping on X.

If there is a third category, Z, with a one-to-many relationship from X to Z, there is not necessarily a relationship between Y and Z. So there may be blank rows with only Y or only Z.

custom.1Mx2_detail.png

Each X has 1 or more Y, and 1 or more Z

There are two potential solutions. If there is a relationship between Y and Z, Advanced Joins can impose additional constraints so that only the rows with both Y and Z are shown. For more information, see Joins.

On the other hand, there may be no relationship between Y and Z, only between X and Y, X and Z. Or there may be a relationship, but it does not matter for this data set. Repeating groups can ignore that relationship and simply organize the data by X instead.

To do so, create two repeating groups for X, and put Y in the first, and Z in the second:

custom.1Mx2_repeating_group.png

Each X repeats twice: once for Y, once for Z

Each repeating group section has its own group header, detail, and group footer sections. These follow the same principles as their main counterparts.

KBOFoYylYp.png

A report with two Repeating Groups that will display all of the Suppliers for each product, and the Orders for each product.

KojXIwnBVD.png

The output of the above report: three products with their suppliers and orders listed with two Repeating Group Sections

Create, Modify, Delete Sections

  • To add a new section either:
    • click the + Add Section button
    • click a Section Menu MoreOptions_Black_Small.png icon then hover over + Add Section
    • right-click anywhere on a Section Header and hover over + Add Section
    NC8dP96LSm.png
    The Add Section menu will open with static sections on top and dynamic sections on the bottom. Click a section type to add to the design grid. If adding a Group Header, Group Footer or Repeating Group a minimum of one Sort must be defined for the report. In v2021.2+, click Add Sort/Modify Sorts to open the Sorts dialog.
  • To change the sort that a group header, group footer or repeating group breaks on, either:
    • click the Section Menu MoreOptions_Black_Small.png icon on the section to be changed, then click Edit.png Modify SectionEdit.png Edit Group.
    • right-click anywhere on the Section Header of the section to be changed, then click Edit.png Modify SectionEdit.png Edit Group
  • To re-arrange the order of group headers, group footers or repeating groups, either:

    Notes

    The order of the sorts as they appear in the Sorts dialog have an effect on the way the data is arranged. Moving the sections up and down will only change where in the report that data appears, not change its grouping/sorting order.

    Report Headers, Page Headers, Detail, Page Footers and Report Footers have fixed positions.

    • click the Section Menu MoreOptions_Black_Small.png icon on the section to be changed, then click MoveUp.png Move Section Up or MoveDown.png Move Section Down
    • right-click anywhere on the Section Header of the section to be changed, then click MoveUp.png Move Section Up or MoveDown.png Move Section Down
  • To delete an existing section, either:
    • click the Section Menu MoreOptions_Black_Small.png icon on the section to be removed, then click DeleteReportSmall.png Delete Section
    • right-click anywhere on the Section Header of the section to be removed, then click DeleteReportSmall.png Delete Section

Reprinting Group Headers

If the detail section of any given group spans multiple pages, it may be desirable to have the Group Headers repeated at the start of the next page.

hOdC0mRYFA.png

A report with a Group Header that includes an employee’s photo, name and sales goal visualization with a list of all of their orders

pE1xTpuOwq.png

The same report with the Group Header reprinted at the top of each page as the Detail section flows to the following page. The employee information appears at the top of each page their order information appears

To reprint a Group Headers when the detail section continues onto another page:

  1. Open the Row Menu by either:
    • clicking the Row Menu MoreOptions_Black_Small.png icon on the row to be repeated
    • right-clicking anywhere on the row number of the row to be repeated
      j3ohn2yDxb.png
  2. Check the Repeat Row checkbox.
  3. Repeat steps 1–2 for any additional row that should repeat.

When rows are set to repeat, two blue stripes will appear on the left side of the row number. For example:

zNp4foUCCU.png

For additional information about the Row Menu, review the Rows Section of the Advanced Reports: Design Grid article.

Section Shading

Section shading creates alternating background colors for repeating elements in a section. Alternating colors applies to Detail and Group sections; for other sections, only one color can be used.

Section shading is overridden by the cell background color and by conditional formatting, if applied. Review the Advanced Reports: Cell Formatting article for more information.

9FB2ZqvKol.png

A basic report with no section shading applied

4uvMAGOY4E.png

The same report with orange and white alternating section shading colors applied to the Detail section

8imWCKRdTK.png

The Section Shading dialog for the above report

DOFWUmgiZ6.png
peoqILVu3r.png
The same report with orange, yellow and pink alternating shading colors applied to the Detail section, and its corresponding Section Shading dialog

To add section shading:

  1. Open the Section Menu by either:
    • clicking the Section Menu MoreOptions_Black_Small.png icon on the section to be changed
    • right-click anywhere on the Section Header of the section to be changed
  2. Click Shading.png Section Shading to open the Section Shading dialog.
    WN6mHjW8Ft.png
  3. Click + New to add a new shading color. Any number of colors may be added.
  4. Click the Color Chooser color-picker-icon.png icon, or enter a hexadecimal HTML color code to select a shading color.
  5. Use the up Move Item Up ^ and Move Item Down V icons to rearrange the order of the colors.
  6. Click the Delete X icon to remove a shading color.
  7. Click Okay to close the dialog and apply the color settings.

When Section Shading is applied to a section, a small indicator with the shading colors will be shown above the Section Menu MoreOptions_Black_Small.png

icon. For example:
D56Ej3A9hv.png

Advanced Reports: Design Grid (v2021.1+)

 

The Design Grid is main interaction point of the Advanced Report Designer. Use the Design Grid to:

  • Define the layout of the report by adding, altering and deleting rows, columns, and sections to it.
  • Define the content of the report by entering data fields, text, labels, formulas, images, charts, CrossTabs and maps to it.

Anatomy of the Design Grid

The Design Grid has six principal components:

yPGR4iL8yJ.png

The anatomy of the Advanced Report Designer Design Grid

  1. + Add Section button — click this button to add a new section to the grid
  2. SelectAll.png Select All Cells button — click this button to select all of the cells in the grid
  3. Column Headers — labelled alphabetically beginning with A from left to right. Click the header to open a menu for working with columns. These headers are referenced only in the Designer, and do not appear on the report output.
  4. Section Header — displays the name and type of the section. Click the header to open a menu for working with sections. These headers are referenced only in the Designer, and do not appear on the report output.
  5. Row Header — labelled numerically beginning with 1 from top to bottom. Click the header to open a menu for working with rows. These headers are referenced only in the Designer, and do not appear on the report output.
  6. Cells — contain the report’s contents

Sections

The sections of an Advanced Report define its appearance and pattern. Specifically, sections determine how frequently cell contents are repeated. For example, a report may have a Page Header, a Report Footer and Detail section to display data.

To resize the Section Headers, hover the mouse on the right edge of the Section Header. The cursor will change to the resizing cursor. Click and drag the mouse in the desired direction, to either expand or shrink the header.

gLH92SLxuf.gif

 

Learn more about working with sections in the Advanced Reports: Sections article.

Columns

Columns expand horizontally across the report. Typically, each parcel of information to be included in the report is included in its own column. Columns may also be used for padding cells or creating hierarchical indentations in the report’s layout. There is no practical limit to the number of columns a single report may have.

JzQEmhXMeQ.png

A very simple report design with five columns, labeled A–E, one for each identifiable employee property to include in the report.

Sn7DcKtXfR.png

Slightly more complex report design, note columns A and B don’t contain content in the Detail section, instead they create padding for the Detail information and establish a hierarchy of the group headers over the Detail

Working with Columns

  • Selecting Columns
    • To select a continuous group of columns, hold the Shift key and then click the starting and ending columns.
    • To select non-continuous groups of columns, hold the Ctrl key (Command key on Mac) then click the desired columns.
  • Resizing Columns
    • A column can be resized by dragging its right edge horizontally, just as Section Headers can be.
    • Use the Column Width… or Set Widths Identical options on the Column Menu described below
    • Hover the mouse over the column header to see it’s current sizeeuTuq5pKWr.png

Once one or more columns are selected, hover the mouse over a column header, then click the Column Menu MoreOptions_Black_Small.png

icon, or right-click on a column header to open the Column Menu.

XOmqcwcter.png

The Design Grid Column Menu

  • InsertColumnBefore.png Insert x Column(s) Before — insert the selected number of columns before (to the left of) this column (e.g. if three columns are selected, this menu item is Insert 3 Column(s) Before)
  • InsertColumnAfter.png Insert x Column(s) After — insert the selected number of columns after (to the right of) this column (e.g. if three columns are selected, this menu item is Insert 3 Column(s) After)
  • DeleteReportSmall.png Delete x Column(s) — delete the selected columns
  • Set Widths Identical — set the widths of the selected columns to the width of the column that was selected last
  • Column Width… — open the Column Width dialog, where an absolute value, in pixels may be set for the column’s width
  • Hide Column — when checked, the selected columns (and their contents) will be hidden from the report output. Hidden columns can be unhidden in the Report Viewer.
  • MenuSorts.png Column Sort — if the Interactive Column Sorts feature has been enabled on this column, hover over this item to select the default sorting direction. This menu item only appears if the Interactive Column Sorts feature is on, and only has an effect in the Report Viewer.
    • None — this column will not be sorted when the report is first executed
    • Ascending — this column will be sorted in Ascending (smallest/earliest to largest/latest) order
    • Descending — this column will be sorted in Descending (largest/latest to smallest/earliest) order
  • Column Info… — open the Column Information dialog, to set properties of the column that are used for the Report Viewer’s interactive functions. Review Advanced Reports Report Viewer for more information.
    • Label — provide a label or title for the column that will be used in the Report Viewer
    • Sort — enable the Interactive Column Sorts feature, described below.

Interactive Column Sorts

While viewing reports in the Report Viewer, a user can click the bar at the top of the report to sort on a column. Only those columns that have an Interactive Column Sort defined can be sorted in the Report Viewer interactively like this.

8u0mMFxrqp.png

A report with three columns in the Report Viewer, with a Column Sort activated on the Unit Price column. Both Product Code and Product Name do not have an interactive column sort.

Note

Interactive Column Sorts are applied after the sorts defined in the Report Designer’s Sorts dialog.

To add an Interactive Column Sort:

  1. Hover the mouse over a column header, then click the Column Menu MoreOptions_Black_Small.png icon, or right-click on a column header to open the Column Menu.
  2. Select Column Info… from the menu.

    screen.columninfo.png

  3. Provide a Label for the column as it will appear in the Report Viewer.
  4. From the Sort dropdown select the Data Field to be used for sorting, or provide a formula by clicking the Formula Editor fx icon.
  5. Click Okay.
  6. Hover the mouse over a column header, then click the Column Menu MoreOptions_Black_Small.png icon, or right-click on a column header to open the Column Menu again.
  7. Hover over MenuSorts.png Column Sort and choose a default sorting direction.

    screen.columnsort.png

Rows

Rows expand vertically through the report. Rows may also be used for padding cells or creating spacing in the report’s layout. There is no practical limit to the number of rows a single report may have.

When the report is executed, it will automatically add rows to include all of the data necessary. For example, to display a report with many products, it is not necessary to have a row for each product configured in the Report Designer. A single row in a Detail section will automatically expand to include all of the products at run time.

Uu06LMlkC5.png

A basic report design that includes only a single row in the Detail section that will expand to include all of the Products when executed

ERuX2baWu1.png

When the report is run, all of the products appear as the Detail section automatically adds the rows it needs to include them

Working with Rows

  • Selecting Rows
    • To select a continuous group of rows, hold the Shift key and then click the starting and ending rows.
    • To select non-continuous groups of rows, hold the Ctrl key (Command key on Mac) then click the desired rows.
  • Resizing Rows
    • A row can be resized by dragging its bottom edge vertically.
    • Use the Set Auto Height or Row Height… options on the Row Menu described below
    • Hover the mouse over the row header

Once one or more rows are selected, hover the mouse over a row header, then click the Row Menu MoreOptions_Black_Small.png

icon, or right-click on a row header to open the Row Menu.

kqN3ojJ5nq.png

  • InsertRowBefore.png Insert x Row(s) Before — insert the selected number of rows before (above) this row (e.g. if three rows are selected, this menu item is Insert 3 Row(s) Before)
  • InsertRowAfter.png Insert x Row(s) After — insert the selected number of after after (below) this row (e.g. if three rows are selected, this menu item is Insert 3 Row(s) After)
  • DeleteReportSmall.png Delete x Row(s) — delete the selected rows
  • Set Auto Height — when row height is set automatically, each row will change its height based on the content contained within it. Click this item to quickly set the row height to automatic mode.
  • Row Height… — open the Row Height dialog, where an absolute value, in pixels may be set for the row’s height or check the Auto Height checkbox to enable automatic row height
  • Suppress Rows — when checked, the selected rows (and their contents) will be hidden from the report output. Suppressed Rows have a faint dot pattern to indicate it won’t be included in report output.
    cwuljJSLWJ.png

    The slight dotted pattern on Row 4 indicates that it is suppressed from report output

  • Collapse Rows — only available for rows in Group Header sections. When checked, the groups will hide their content by default in the Report Viewer. A small Open Rows OpenRows.png icon will appear next to the Group Header, indicating the group can be expanded to show more information. To learn more, see Collapsed Rows below.
  • Repeat Row — only available for rows in Group Header sections. When checked, this row will repeat at the top of each page, if the Detail section in the group continues from one page to another. See Reprinting Group Headers in the Advanced Reports: Sections article for more information.
  • Page Break — when checked, a new page will be created before this row.

Auto Row Height

By default, all rows will have their height set automatically. This means that the rows height will conform to the data that is contained in the row.

GTwlkvddZ9.png

Each row is a different height, adapted to the length of the Description field on that row

og4sMgDYGb.png

The same report, with a fixed row height of 50 pixels. Notice the first row has extra space and the other rows have truncated the category description

Collapsed Rows

A Group Section can be set to display as collapsed by default in the Report Viewer. This causes the contents of the section to be hidden and individually expandable for each break in the group section. When the report is exported to PDF, Excel, CSV or RTF all of the groups will be expanded so all report content is visible. Only one row in the Group Header section can be set to collapse, but multiple groups may be set to collapse.

screen.collapse_example.png

A report with Collapse Rows enabled in the Report Viewer, with all of the groups collapsed

In the Report Viewer, left-click on the Open Rows

icon to expand (open) or collapse (close) the group.

screen.expand_example.png

The groups for Order #10251 and Order #10252 are expanded whilst the others remain collapsed in the Report Viewer

Alternatively, right-click on the Open Rows OpenRows.png

icon to open a menu with display options:
  • Expand — open the selected top-level group. This is the same behavior as left-clicking the Open Rows icon on a collapsed/closed group
  • Collapse — close the selected top-level group. This is the same behavior as left-clicking the Open Rows icon on a expanded/open group. The state of the sub-groups is preserved.
  • Expand Group — open the selected top-level group and all sub-groups within that group.
  • Collapse Group — close the selected top-level group and all sub-groups within that group.
  • Expand All — open every group and sub-group on the page.
  • Collapse All — close every group and sub-group on the page.

Properties of a Collapsed Row

  • Collapsed Rows always start as collapsed in the Report Viewer.

    Note

    Collapsed/expanded states of rows won’t be saved to User Reports.

  • Page Breaks below a collapsed row are ignored. Expanding a collapsed group does not alter the report’s pagination.
  • The contents of a collapsed group are searchable, but will not be visible until the containing group is expanded.

See Interacting with the Report Viewer for more information on the Report Viewer.

Row Header Indicators

When rows are collapsed, repeated or a page break is added, small indicators will appear with the row header.

Table A — Row Indicators
Feature Description of Indicator Example
Collapsed Row Small black arrow pointing down right KJ3ZfzFv4r.png
Repeat Row Two blue lines on the left PGdg0ShQxe.png
Page Break Dashed lines on the top of the row header WugHcMSdM3.png

The indicators may appear together if more than one feature is set on that row.

rsYAGEPOiE.png

A collapsed, repeating row that causes a new page each time it appears in the report

Cells

Cells are the containers for all the information in a report. Cells may contain data fields, formulas, text, images, charts, maps, links to other reports and/or links to special code snippets called Action Events.

The cells (and their contents) are the only elements on the Design Grid that actually appear in the final report output.

  • To select cells, either click or use the keyboard arrow keys.
    • To select a continuous group of cells, hold the Shift key and then click the starting and ending cells or click and drag the center of one cell to another.

      Note

      Holding Shift while using the keyboard arrow keys will move the selected cell in the opposite direction, not select multiple cells. Use the mouse to select multiple cells.

    • To select non-continuous groups of cells, hold the Ctrl key (Command key on Mac) then click the desired cells.
  • To enter text into a cell either:

    Tip

    When entering a formula, start with an equals sign. For example:

    =aggsum({OrderDetails.Quantity})
    • click the cell and begin typing, the cell contents appears in the formula bar just below the toolbar
    • double-click the cell, and a text field will appear on the cell
  • To add data fields from Data Objects to a cell, either
    • Drag the field from the Data Objects Pane and drop it on the cell

      EbPLc149nh.gif

    • Select a cell and begin entering a formula with the data field’s name in curly braces. For example, ={Categories.CategoryName}
  • To insert charts, gauges, maps, images or CrossTabs into a cell, select it then either:
    • click the Insert Insert.png icon in the toolbar to select the item to add
    • right-click on the cell to open the cell context menu, described below
  • Move contents from the selected cell to another by placing the mouse on the cell border. The cursor will change to a hand icon. Then drag to the destination cell. Or, use the Cut and Paste keyboard shortcuts or the Cell Context Menu.

    pYgfaCbtx3.gif

  • Copy contents from the selected cell to another by placing the mouse on the cell border. The cursor will change to a hand icon. Hold down the Ctrl key then drag to the destination cell. Or, use the Copy and Paste keyboard shortcuts or the Cell Context Menu.
  • Adjacent cells can be merged and split using the Split/Merge CellsMergeCells.png icon on the toolbar or the MenuMergeSplit.png Merge Cells cell context menu item. Cells in different rows may also be merged together. Only those cells that have been merged can be split.

Cell Context Menu

Right-clicking on a selected cell will open a Cell Context Menu with several cell options. Some of the options will only be available in certain situations.

JPXXF1sx18.png

Cell Context menu

  • Cut.png Cut — copy the contents of this cell so that it may be pasted into another one, and clear the cell’s contents
  • Copy.png Copy — copy the contents of this cell so that it may be pasted into another one, without clearing the cell’s contents
  • Paste.png Paste — place the contents of a previously cut or copied cell into this one
  • DeleteReportSmall.png Clear — delete all of the cell’s contents
  • FormatCellsSmall.png Format Cells — open the Cell Format dialog to customize how data values will display, add custom borders, and apply conditional formatting
  • MenuMergeSplit.png Merge Cells or Split Cells — merge a group of selected cells together, or split a group of already merged cells up
  • Remove Linked Value — available only if this cell is linked to another report. Click this option to remove the linked report from this cell. See Advanced Reports: Linked Reports (Drilldowns).
  • Remove Conditional Formatting — available only if conditional formatting has been applied to this cell. Click this option remove the conditional formatting properties that have been applied to it.
  • Insert — like the Insert Insert.png icon on the toolbar, insert a new item such as a chart, gauge, map, image, CrossTab or formula. Only those items that may be added into this cell based on its section are available.
  • MenuFormula.png Edit Formula — available only if there is a formula in this cell. Click this option to open the Formula Editor dialog.
  • MenuChart.png Edit — available only if there is a chart in this cell. Hover over this item, then select from one of the following options:
    • Type — change the chart from one type to another as in the Type tab of the chart wizard. Only charts of the same series type may be selected. That is, if the chart is a multi-series type of chart only other mutli-series charts may be selected.
    • Theme — change the color palette of the chart as in the Appearance tab of the chart wizard
    • Legend Location — change the location of the legend
    • Wizard… — open the Chart Wizard dialog
  • MenuGauge.png Edit Gauge — available only if there is a gauge in this cell. Click this option to open the Gauge Wizard.
  • CrossTabWizard.png Edit CrossTab — available only if there is a CrossTab in this cell. Click this option to open the CrossTab Data Designer dialog.
  • GoogleMaps.png Edit Google Map — available only if there is a Google Map in this cell. Click this option to open the Google Map Wizard.
  • Map.png Edit Map — available only if there is a GeoChart in this cell. Click this option to open the GeoChart Map Wizard.

Cells containing fields from Data Objects will have a small color-coded triangle appear in the top-left corner. Cells containing data fields from the same data object will have the same color.

3p3QTPen8B.png

Each cell with a field from a different Data Object has a different indicator color. Note that two cells on Row 6 with fields from the Product Data Object have the same color.

Indicators

Certain indicators will appear in the cell if features have been enabled on them.

Table B — Cell Indicators
Feature Description of Indicator Example
Conditional Formatting Uppercase letter A in top right corner of the cell A
Linked Report Chain links in the top right corner of the cell chain links
Data Field in a Cell Small colored triangle in top left corner of the cell DIpmVbi7Yf.png

Advanced Reports: Sorts

Sorting is the process of ordering data in a certain sequence. For each available data category, you can choose which data field should be used to sort the rows. Fields can be sorted in ascending or descending order. The way in which rows are sorted depends on the type of value in the field:

Numeric
Ascending -->

Lower values     Higher values  <-- Descending

Date
Ascending -->

Past     Future <-- Descending

Text
Ascending -->

A     Z custom.arrow_back.png Descending
custom.DepartmentsUnsorted.png custom.DepartmentsSorted.png

 

Sorting a category by Department

A report can have multiple sorts. This can be useful when you want your highest precedence sort to affect a data field where the values for multiple rows may be the same.

For example, imagine a large company with many employees. There could be multiple people with the last name Buchanan. With only a sort on LastName, you do not know how all the people with the last name Buchanan will be ordered amongst themselves. If this matters, then you can add a second sort on, say, the FirstName field, so that people with the same last names will be ordered by their first names.

Relationship Between Sorts and Groups

Sorts are a prerequisite for making Groups. Sorting puts data in order so that data rows which share common values for the sort field are next to each other. This is essentially what grouping does as well. Grouping simply takes those common values, pulls them out of the rows, and makes Sections for each group of rows which share that value. Sorts tell the report how you want to your data to be grouped.

sorted grouped

 

Grouping a category by the Department sort

Tip

Set the sort precedence so that nested groups are in order of their grouping level. The outermost group should have the highest precedence, with the next levels following in order. If the precedence is set incorrectly, it could result in inconsistent data groups.

Add, Edit, Delete Sorts

  1. Click the SortsMenu.png Sorts icon in the toolbar to open the Report Sorts dialog.
    CzizrINkGB.png

    The Report Sorts dialog for a report that will first sort by the manufacturer’s name, then by the Product Category name then finally by the Product’s name

     

  2. Add data fields to sort by first selecting a Data Object from the dropdown, and then either:
    • clicking the arrow icon to the right of the data field’s name
    • clicking the Add2.png Add button at the bottom of the data field’s tree
    • double-clicking on the field’s name
    • drag-and-dropping the data object from the tree to the Sort By panel
    • clicking the Add2.png Add Formula button to add a formula sort to the report. For more information, refer to the Formula Sorts section of this article.
  3. Click the Formula Editor Formula.png icon to change this sort to a Formula Sort.
  4. Set the Sort Order to either Ascending or Descending with the dropdown.
  5. If necessary, change the precedence of the sorts by either:
    • clicking the Move Item Up MoveGridRowUp.png or Move Item Down MoveGridRowDown.png icons
    • click and drag the Grip DragGrip.png icon to move the sort to the desired location
  6. Repeat steps 2–5 for any additional sorts to be added
  7. To delete a sort from the panel, click the Delete DeleteItem.png icon at the end of the row.

Formula Sorts

Note

This feature is recommended for advanced users.

It is also possible to sort by formula instead of a plain data field, to gain finer control over group sections.

If there is no single data field as a unique key to indicate the end of one group and the start of another (called a break), a sort formula with concatenation of two fields may be used instead. For example, EmployeeId plus TerritoryId fields:

={EmployeeTerritories.EmployeeId} & {EmployeeTerritories.TerritoryId}

Or if a plain data field would generate too many groups, sorting on a portion of a field may be helpful. For example, group on only the month and year component of a date field.

=Date(Year({Employees.HireDate}),Month({Employees.HireDate}),1)

To add a sort formula, click +

Add Formula, then use the Formula Editor to make a composite field to sort on.

Filters

Filters narrow the scope of reports by restricting the data by specified criteria.

For example, imagine a data object containing a row with every sale a company ever made. A filter can limit the report to only sales from the past month. This also has the benefit of speeding up report execution.

There are three types of filters available in the Report Filters dialog:

  • Standard
  • Group Min/Max
  • Top/Bottom

This article covers Standard Filters, refer to the respective articles for Group Min/Max and Top/Bottom filters.

Standard filters limit data by only showing rows where the values for a field meet a certain condition.

Standard Filters are comprised of three parts: the filter field, the operator and the values. To help design standard filters, consider a phrase that spells out what to include. For example: “Include only the products whose unit price is more than $10” or “Do not include any employee who was hired after 5/1/2008”.

The filter field is the data field that contains the data that will be filtered. In the above examples, the filter field would be the product ID number or employee hire date.

The operator sets the filtering action. The table in Step 3 below lists all of the available filter operators and how they work. In the above examples, the operators would be Greater Than for the products unit price and Less Than for the employee hire date.

The values are the criteria that the filter field must meet when compared by the operator. In the above examples, the values would be $10 and 5/1/2008. Some operators allow there to be more than one value.

Adding Standard Filters

This section applies to Advanced Reports. To learn about adding filters to ExpressView or Dashboards, refer to the ExpressView: Managing Data and Dashboard Designer: Filters articles.

  1. Click the Filter FilterMenu.png icon to open the Report Filters dialog.
  2. Add a data field to filter by, called the Filter Field by first selecting a Data Object from the dropdown, and then either:
    • clicking the arrow icon to the right of the data field’s name
    • clicking the Add2.png Add button at the bottom of the data field’s tree
    • double-clicking on the field’s name
    • drag-and-dropping the data object from the tree to the Filter By panel
    • clicking the Add2.png Add Formula button to add a formula filter to the report. For more information, refer to the Formula Filters section of this article.
  3. For each data field, select an operator from the Equal To dropdown. When the report is run, the field value for each row is checked against the condition for that field. Only the rows where the field satisfies the condition will be included in the report.The following table describes the filter operators and their applicable data types:
    Table A — Filter Operators
    Operator Type Filter Values Matching Values Not-Matching Values
    Equal To (=) Any July 4, 2016 July 4, 2016
    July 4, 2016 12:00 AM
    July 4
    July 4, 2016 2:00 PM
    Not Equal To (!=) Any July 4, 2015 July 4
    July 4, 2016 2:00 PM
    July 4, 2016
    July 4, 2016 12:00 AM
    Less Than (<) Number, Date/Time July 4, 2016 July 3, 2016 July 5, 2016
    Less Than or Equal To (<=) Number, Date/Time July 4, 2016 July 3, 2016
    July 4, 2016
    July 5, 2016
    Greater Than (>) Number, Date/Time July 4, 2016 July 5, 2016
    July 4, 2016 5:00 PM
    July 3, 2016
    Greater Than or Equal To (>=) Number, Date/Time July 4, 2016 July 4, 2016
    July 5, 2016
    July 4, 2016 5:00 PM
    July 3, 2016
    Starts With Text, Number 203 2035550224 8458081120
    Not Starts With Text, Number 203 8458081120 2035550224
    Ends With Text, Number 224 2035550224 7188044606
    Does Not End With Text, Number 224 7188044606 2035550224
    Contains Text, Number 555 2035550224 2038081120
    Does Not Contain Text, Number 555 2038081120 2035550224
    Is Between Any 1, 4 1, 1.5, 3, 4 0.999, 5
    Is Not Between Any 1, 4 0.999, 5 1, 1.5, 3, 4
    Is One Of Any 1, 2, 3, 4 1, 2, 3, 4 1.1, 9
    Is Not One Of Any 1, 2, 3, 4 1.1, 9 1, 2, 3, 4

    Note

    The Is Between operator is inclusive. Values should be in least to greatest order.

  4. Enter a filter value or values, by either:

    AIn4GRXuO4.png

    • Entering them directly with the keyboard.
    • Select them from the list of existing values. Type into the filter field to search for data values to filter. Click the Settingsgearicon to select whether to search for values that either Start With or Contain the typed text (v2017.3+).
    • Click the Filter Function Formula.png icon to choose a pre-defined value based on a formula programmed by the system administrator. (For example, First Day of Current Month or Friday of Last Week).
  5. Optional: If there are multiple filters, they may be logically grouped together. See Grouping Filters Together for more information.
  6. Optional: If the user should be prompted to enter a filter value when the report is run, check the Prompt For Value checkbox. A Title for each filter object may be added. This title will be displayed in the prompt to the user when the report is executed. See Prompting for Values below.
  7. If necessary, change the order of the filters by either:
    • clicking the Move Item Up MoveGridRowUp.png or Move Item Down MoveGridRowDown.png icons
    • click and drag the Grip DragGrip.png icon to move the filter to the desired location

Formula Filters v2018.2+

Formulas may be used in the filter field allowing for much more powerful filter statements.

Consider the following example using data objects from the sample Northwind data set, to compare the OrderDate against a single date.

{Orders.OrderDate} > 01/01/2015

Now, Data Objects may be used in a formula when doing a filter operation. For example, calculating the revenue of an order line item by multiplying {OrderDetails.Quanity} by {OrderDetails.UnitPrice} and then applying a filter to select only those line items whose revenue is greater than $300.

{OrderDetails.Quantity}*{OrderDetails.UnitPrice} > 300

To add a Formula Filter in the Advanced Report Designer’s Filters dialog:

  1. Click the Add2.png Add Formula button in the lower left to open the Formula Editor dialog.

    Tip

    Refer to Formulas for details about creating and editing formulas and using the Formula Editor.

    Note

    Certain functions are available in the Formula Editor that are not compatible with the context of formula filters, such as CellValue(), FilterValue(), Hyperlink, LoadImage() and PageNumber().

Prompting for Filter Values

If users should be able to select their own filter values when they run the report, set filters to Prompt For Value. In the Report Options, choose whether to let users change the operators and delete filters.

iB9N9ryp4J.png

Prompting Filter Window with two filters: a Greater Than or Equal To filter for the product unit price and an Is One Of filter for one or more product categories

When creating prompting filters in the Report Filters dialog, it is not necessary to select filter values (step 4). But if values are provided, those values become the defaults in the prompting window.

If there are no valid filter values for a particular filter, either due to there being no records in the filter field or an incomplete filter dependency, a No values found matching the search criteria message will appear when opening the dropdown in either the Simple with Operator and Simple without Operator prompting filter windows.

Filter Dependency

Using Filter Dependency is a graceful way of preventing users from seeing a No Data Qualified message by choosing incorrect filter values. Filter Dependency is an optional feature that must be enabled by the system administrator before it can be used in reports. When Filter Dependency is enabled and a report contains at least two prompting filters, values for subsequent filter dropdowns will be determined by values chosen for the preceding filters in the dialog.

Consider an example with three filters: Category, Product and Supplier that are grouped together with the AND clause. In this case, the report will select rows when all of the filter conditions are met. If Category is chosen to be Meat/Poultry, dropdowns for Product and Supplier will be filtered by Category so that only Products in the Meat/Poultry category and Suppliers selling Meat/Poultry products can be chosen. If a Product value is further selected, then the dropdown for Supplier would be filtered by both Category and Product such that only a Supplier selling that particular product could be selected. This “cascading” effect continues from top-to-bottom for as many filters there are on the report.

Tg1qsJkPlm.png

Only Products in the Meat/Poultry Category can be selected as the Product filter depends on the Category value.

Filter dependency only works in a top-to-bottom flow. That is, choosing a Product Name will not cascade upwards to the Category filter, it will only cascade down to the Supplier filter. For interactive filters on a Dashboard, filter dependency is determined by the order the filter tiles are added to the canvas.

If there is no value selected for Category, then the Product and Supplier dropdowns will show no values in the example above. This is because the filter being generated is CategoryName = “null”, and so no data is returned. When this occurs in a Simple with Operator or Simple without Operator prompting filter window, a No values found matching the search criteria message will appear when opening the dropdown.

Jtz8wxvgra.png

No values found matching the search criteria message will appear when opening a filter dropdown and there are no values to display

There are cases for data sets other than what our example uses where the subsequent filters will return data even if the preceding filter returns null. One such case is if there is an OR clause between two filters. For example, A OR B AND C. In this case, filter B is not dependent on the filter A, so selecting a value for filter A would not filter the dropdown for filter B. But C is still dependent on B in this case because of the AND in between them.

1byiRcgioN.png

All Products are available regardless of Category because the filter statement now includes the OR clause between Category and Product

Filter Dependency will follow logical grouping in the filter statement created either with the Group With Next Filter checkbox or by using the Nesting Filter Groups keyboard shortcuts.

Important

Filter Dependencies only support one level of grouping and are not honored when the filters are included in the Common Prompt mode of a Chained Report.

Filter Logic and Grouping

Conjunctions

Standard Filters can be combined to form complex filtering phrases. Taking the examples from the beginning of this article a bit further, a filter can be setup to show “only the orders of products whose unit price is more than $10 AND were placed by any employee who was hired after 5/1/2008”. Note the emphasis on the word AND. To build a report that shows this kind of data, the original two filters are conjoined so that only orders that meet both criteria will apply.

Another way of combining filters is with an OR conjunction. For example, “show only the products whose Category is Beverages OR whose Category is Condiments”.

Filter conjunctions can also be combined together. Consider this complex filter phrase that uses four individual standard filters to return only service tickets that required a Return Material Authorization due to lightning or surge damage: “Include only the service tickets where the description contains ‘RMA’ OR the title contains ‘RMA’ AND the description contains ‘Lightning’ OR the description contains ‘Surge'”.

Combined filter statement in filter window

Example of a combined filter statement

To specify that a data row needs to satisfy any one of several filters:

  1. Click the Filter FilterMenu.png icon to open the Report Filters dialog.
  2. Change the order of the filters so they are consecutive, by either:
    • clicking the Move Item Up MoveGridRowUp.png or Move Item Down MoveGridRowDown.png icons
    • click and drag the Grip DragGrip.png icon to move the filter to the desired location
  3. Select the first filter.
  4. Change AND With Next Filter to OR With Next Filter in the dropdown.
    Notice that in the Summary field, the And between this filter and the next has changed to Or.
  5. Repeat steps 2-3 for every filter except the last.

Note

The AND operator (AND With Next Filter) has higher precedence over the OR operator (OR With Next Filter). This means filters that are ANDed together will be evaluated first before those that are ORed together.

Examples

This filter will only show donations larger than $5,000 that were made today from the Telethon fundraising campaign

Campaigns.Campaign Name = 'Telethon 1' And Donations.Date = 'Today' And Donations.Amount >= '5000'

This filter will show donations larger than $5,000 and were made today or if the donor’s birthday is today. Since this is less restrictive, more results are returned.

Donations.Date = 'Today' Or Donors.birthday = 'Today' And Donations.Amount > '5000'

Grouping

Filters may be grouped together, to specify that a data row can match either one group of filters, or another group of filters, to show on the report.

To specify that a data row needs to satisfy any one of several groups of filters:

  1. Click the Filter FilterMenu.png icon to open the Report Filters dialog.
  2. Change the order of the filters so they are near their group mates, by either:
    • clicking the Move Item Up MoveGridRowUp.png or Move Item Down MoveGridRowDown.png icons
    • click and drag the Grip DragGrip.png icon to move the filter to the desired location
  3. Select the first filter in the first group.
  4. Check the Group With Next Filter checkbox.
    Notice that in the Summary field, there are now parentheses around this filter and the next.
  5. Repeat steps 2–4 for every filter except the last in the first group.
  6. Select the last filter in the first group.
  7. Change AND With Next Filter to OR With Next Filter in the dropdown.
    Notice that in the Summary field, the And between this filter and the next has changed to Or.
  8. Repeat steps 2–7 for every group of filters. Skip step 7 for the last filter in the last group.

Nesting Filter Groups

Filter groups can be nested arbitrarily. This allows for more detailed control over grouping. The Summary field shows the actual statement used to filter the data. You can make arbitrary groupings by inserting parentheses manually at locations in the statement. Use the following keyboard shortcuts:

Important

Filter Dependencies only support one level of grouping.

  • Ctrl + [ to add an opening parenthesis before the selected filter
  • Ctrl + ] to add a closing parenthesis after the selected filter
  • Ctrl + Shift + [ to remove an opening parenthesis from before the selected filter
  • Ctrl + Shift + ] to remove a closing parenthesis from after the selected filter

Group Min/Max Filters

Group Min/Max Filters cause the report output to display detail containing either the highest/latest or lowest/earliest values in a field for either one group, multiple groups, or an entire data set.
This tool is especially useful if interested in viewing the highest or lowest values, such as the most recent hire date or highest revenue figure, in a given set. Group Min/Max filters are compatible with standard filters, and there is no limit to the number of group filters that can be defined.
To add a Group Min/Max Filter to a report:
  1. Open the Filters dialog then, click the Group Min/Max tab. To open the dialog:
    • (v2021.1+) Click the Filters funnel icon on the toolbar
  2. Add a data field to filter by, called the Filter Field by first selecting a Data Object from the dropdown, and then either:
    • clicking the arrow icon to the right of the data field’s name
    • clicking the + Add button at the bottom of the data field’s tree
    • double-clicking on the field’s name
    • drag-and-dropping the data object from the tree to the Filter By panel
  3. From the Minimum dropdown, choose either Minimum to see the smallest or earliest values, or Maximum to see the largest or latest values.
  4. From the For Each dropdown, choose the data set to group the minimums or maximums by. Choose Entire Data Set to show the minimum or maximum of the entire data set, or a data object or sort field to show the minimum or maximum of a group. See details in the sections below
  5. If necessary, change the order of the filters by either:
    • clicking the Move Item Up MoveGridRowUp.png or Move Item Down MoveGridRowDown.png icons
    • click and drag the Grip DragGrip.png icon to move the filter to the desired location

Like standard filters, multiple Group Min/Max Filter Fields may be added. Subsequent filter fields will further filter the report in the event of a tie.
Consider a report that lists the orders placed by customers grouped by the employee that took the order. The report design may look like this:

NSBCys01TH.png

Figure 1 — Report Designer layout of the example report used in this section

In the Report Viewer, this report looks like this:

YhXVrijKgs.png

Figure 2 — Report Viewer view of the above example report

This report will be used in each of the following examples

Entire Data Set

The most basic usage of a Group Min/Max Filter is to limit the whole report to a singe record, representing either the minimum or maximum value for entire data set. To do this, at step 4 above choose Entire Data Set.
Setting a Group Maximum Filter on the example report’s OrderDetails.Quantity field will reduce it to one record with the line item with the largest quantity of a single product out of all of the orders for all of the salespeople.

GgYizlGeWw.png

Figure 3 — The Report Filters dialog for the Entire Data Set Group Min/Max Filter

aEY46lA50x.png

Figure 4 — The resulting output after applying the Entire Data Set Group Min/Max Filter on the report from Figure 1

Tip

To see more than one maximum or minimum for a data set, use a Top/Bottom filter instead.

Min/Max for each Group

Another common usage for Group Min/Max Filters is to see the min or max value for each instance of a group.

To do this:

  1. Add a sort on the field to do the min/max grouping on. Since sorts are implicit groups, adding a Group section is optional.
  2. At step 4 above, choose the sort field from the dropdown.

dYqBl24ZyJ.png

Figure 5 — Report Filters dialog when filtering with a group

Since the customers are grouped by employee, the resulting report output will show the product with the highest quantity ordered by each customer handled by each employee.

n3HCMcMGXM.png

Figure 6 — Showing the products with the largest quantity on an order for each customer and each employee

To show the highest quantity ordered by each customer regardless of who placed the order, check the Ignore other groupings on report checkbox in the Report Filters dialog. In other words, show the largest product quantity ignoring the Employees group.

Note

If applying a Group Min/Max filter to an outer group, then checking the Ignore other groupings checkbox has no effect on the report output because the outermost group takes precedence anyway. If applying a Group Min/Max filter to an inner group, however, the button takes effect.

B56NW4uJPq.png

Figure 7 — Report Filters dialog when filtering with a group while ignoring other groups

Notice that Bon app’ (BONAP) appears only once in Figure 8 in contrast with Figure 6. Due to the fact that BONAP’s order of Spegesild from Robert King is greater than its order of Pavolova from Steven Buchanan, BONAP appears only once on the report. If BONAP had ordered the same quantity from both Buchanan and King, it would appear under both names, even with the Ignore other groupings checkbox checked.

UxuXI2rUkx.png

Figure 8 — Showing the products with the largest quantity on an order for each customer regardless of the employee that placed it

Top/Bottom Filters

Top/Bottom filters, also known as Top N filters can be added to a report. Top N filters allow you to filter data to only the rows with the top or bottom values, for either data fields or data summaries, per group iteration.

Top/Bottom filters work after all other filters have been applied. If a Standard or Group Min/Max filter has narrowed down a data field, a Top/Bottom filter will work on the remaining values.

96YsCqvWQG.png
Top/Bottom tab of the Filters dialog

To show only the top or bottom values, for either data fields or data summaries:

  1. Open the Filters dialog then, click the Top/Bottom tab. To open the dialog:
    • (v2021.1+) Click the Filters funnel icon on the toolbar
  2. Check the Limit the report to the top/bottom values checkbox.
  3. From the Top/Bottom dropdown select either Top to show the largest or latest values or Bottom to show the smallest or earliest values.
  4. Choose which values will be displayed, either:
    • check the All checkbox to sort all of the section values by the Top N criteria
    • enter an integer into the # textbox to specify the desired number of values (e.g. enter 2 to see the top 2 or bottom 2 values). This field is only available when All is unchecked.
  5. Select the data field or group field to filter from the Value dropdown.
  6. Choose the Direction that the results should be sorted:
    • Ascending — items will be sorted from least to greatest
    • Descending — items will be sorted from greatest to least
    • None — items will be sorted in the original report sort order

To optionally filter the top/bottom values of each sorted group on a report, called a For Each Group:

  1. Click the AddBtn.png Add Group button.
  2. Select one of the sorted groups on the report to group by from the dropdown list. You may also type into the dropdown list to search for the name of a field.
  3. Click Okay.

To remove a For Each Group, click the Delete Dropdown DropdownDelete.png icon.

To remove a Top N Filter, uncheck the Limit the report to the top/bottom values checkbox.

Examples

Top 3 Performing Salespeople

A report showing the name and sales revenue for the top three performing salespeople in an organization may look like this:

snU51TJTAi.png

In the Report Designer, the report contains the Employee Name and an aggregate of all of their order revenues summed together. The detail rows are collapsed so they are not initially visible in the Report Viewer until they are expanded.

DPKRZEia1T.png

To filter all of the employees to show only those with the highest three revenues, a Top N Filter is applied with the following properties:

UHwecaCUYB.png
Top N Filter dialog for Top 3 Performing Salespeople report
  • Top/Bottom — set to Top to choose the largest values
  • All — unchecked, enabling the # textbox
  • # — set to 3 which will filter out all employees except for the top 3
  • Value — set to the formula =aggsum({OrderDetails.Revenue}) to set the criteria to the aggregate sum of each employee’s orders
  • Direction — set to Descending so that the largest value appears first and then in descending order from the Top.

Largest Donations per Donor

A report showing a fundraising goal may want to show the name of each donor, and the top two largest donations that each donor made to the cause may look like this:

TFQO85xrrj.png

The report is sorted by the donor’s last name. Each donor may have made many contributions to the cause. In the Report Designer, the report looks like this:

ifKHJMUihk.png

If a Top N Filter is added, only the top donations will be shown. To show the top two donations for each donor, a Top N Filter with a For Each group is added with the following properties:

NFtaI4ceuM.png
Top N Filter dialog for Charitable Donations report
  • Top/Bottom — set to Top to choose the largest donation values
  • All — unchecked, enabling the # textbox
  • # — set to 2 which will filter out all donations except for the top 2
  • Value — set to donations.Amount to set the filtering criteria to the amount of each donation
  • Direction — set to Descending so that the largest value appears first and then in descending order from the Top.
  • For Each — appears because the AddBtn.png Add Group button was clicked to add a For Each group. Set to donors.Surname to enable the Top N filter to be applied to each donor’s name.

Sorting by Aggregates

 

This document covers several versions of the application. Use the Viewing content for dropdown to see only the content relevant to a specific application version.


To sort groups by the summary, or aggregate, calculation of each group of an Advanced Report, use Top/Bottom filters.

Top/Bottom filters look for the highest or lowest values in a set, and then put those values in order. Any arbitrary cell in the report can be the Top/Bottom filter.

To sort by a summary calculation:

  1. Ensure that your report has the appropriate aggregate formula in a group footer or header cell. The cell should return a numeric value in the report output, which you want to sort the groups by.
  2. Open the Filters dialog then, click the Top/Bottom tab. To open the dialog:
    • (v2021.1+) Click the Filters FilterMenu.png icon on the toolbar
  3. Check the Limit the report to the top/bottom values check box.
  4. From the Top/Bottom list:
    • select Bottom to sort in ascending order, or
    • select Top to sort in descending order.
  5. Check the All checkbox to sort all of the section values by the Top N criteria.
  6. From the Value list, select the group footer or header cell with the aggregate formula.
  7. If there is a For Each group, click the Delete - icon to remove it.

Keep in mind that this is not a Sort from the sort menu. It cannot make nested groups. This only affects the order in which a group of data is shown in the output. Because this is technically a Filter, this has precedence over the report sorts.

d3e4Le3Nym.png

 

An Advanced Report that aggregates the revenue raised from donations in a fundraising campaign
KyD5i3MrYW.png

 

The Filters dialog settings to sort by the aggregated revenue figure
eAZnKyAL0U.png

 

The same report now sorted by the aggregated campaign donation amounts

Advanced Reports: Report Options

The following options are available in the General Options dialog:

firefox_Zngyrp3nMe.png

Report Options dialog

 

General Options

  • Allow Execution in Viewer: Allow or prevent the report from being run in the Report Viewer. If set to False, this report must be exported to be viewed.
  • Include Setup Info: Select Top or Bottom to display the data categories, sorts, and filters at either the beginning (Top) or end (Bottom) of the report. Select None to not show this information on the report.
  • Allowed Export Types: Enable or disable output types for the report.
  • Default Export Type: Specify the default output type for the report. If Default the export type is determined by the system’s configuration. This setting is used when exporting a report directly from the Report Tree, for example.
  • Report Tree Shortcut: Specify whether the Run run_button.png button for the report in the report tree runs the report in the Report Viewer or exports it in the default export type.
  • Filter Execution Window: Select which type of Filter menu displays when running the report with prompting filters:
    • Default: The type of filter window is determined by the system’s configuration.
    • Standard: Display the standard filter window.
      standard filter window
    • Simple with Operator: Display a simplified filter window that only allows the filter operator and value to be changed.
      simple with operator
    • Simple without Operator: Display a simplified filter window that only allows the filter value to be changed.
      simple without operator
  • Always Show Filters in Report Viewer: Show the Filter menu and allow changes to be made to the filters every time the report is run, even if there are no Prompting Filters on the report.
  • No Data Qualify Display Mode: Select what to display if no data qualifies for the report.
    • Show Message: Display the standard no data qualified message in a dialog box.
    • Show Report: Display the Page Header, Page Footer, Report Header, and Report Footer sections of the report. Any cells containing Data Fields will not be displayed.

Excel Options

  • Suppress Formatting: Check the checkbox to only include the data in an Excel export, without the formatting.
  • Show Grid: Check the checkbox to show grid lines between cells in an Excel export.
  • Freeze Rows: Freeze the top number of rows when exporting to Excel, so that the rows stay anchored to the screen when scrolling through the report.
  • Freeze Columns: Freeze the left number of columns when exporting to Excel, so that the columns stay anchored to the screen when scrolling through the report.

Page Options

  • Page Size — choose the page/paper size. Choices are common named US and ISO paper sizes (e.g. Letter, Legal, Tabloid, A4, etc…) The default value is Letter.
  • Page Orientation — choose either Portrait or Landscape page orientation. The default is Portrait.
  • Fit to Page Width — check this box to stretch the contents to the available width of the page. The default value is checked.

Report Viewer Options

The following options are available in the Report Viewer Options window:

General

General Report Viewer options
  • Show Grid — Check the checkbox to show grid-lines between cells, in addition to any cells borders that have been applied in the Report Viewer.
  • Simulate PDF — Check the checkbox to have the report appear as if it were on a PDF page when viewed. When unchecked, the report still is paginated but does not have the formatting of a PDF exported report.
  • Allow Hide/Show Columns in Report Viewer — check the checkbox if the ability to show or hide individual columns is available in the Report Viewer. If checked, headers will appear at the top of the page. When right-clicked, users will have the ability to hide or un-hide columns. If unchecked, the headers are not present and the columns may not be changed.
    KGuP3SUNCS.png

    Note

    If a CrossTab appears on the report, this setting will not have an effect.

  • Show Toolbar in Report Viewer — Select whether to show or hide the interactive toolbar in the Report Viewer.
    Interactive Toolbar

     

    • Default: the toolbar will be displayed based on the system’s configuration
    • Auto: the toolbar will be hidden if the Report Footer appears on the first page. Otherwise, the toolbar will be shown.
    • Show: always show the toolbar
    • Hide: always hide the toolbar
  • Show Column Headers in Report Viewer (v2021.1+) — uncheck this checkbox to hide the column headers in the Report Viewer.
    omfUUxO7eL.png
  • Report Row Step Limit — Override the default step size for incremental loading (with a smaller value). This option is only available if Incremental Loading is enabled in your environment.

Filters

Filters tab

Filters tab of the Report Viewer options dialog

 

To allow users to select additional interactive filters in the Report Viewer, add data fields as filters. These filters are accessed by clicking on the Open Dock GrabVert.png

(pre-v2021.1) or DockExpand.png (v2021.1+) icon on the side of the screen in the Report Viewer.
firefox_jfUhJDM8dG.png

Interactive Features pane opened in the Report Viewer showing a Product Name filter, adding a Category filter and Sorts

 

For each filter you can select the following options:

  • Title: Enter text to appear in place of the data field name.
  • Type: Specify the type of ability the user has to choose filter values:
    • Single Choice: A dropdown menu with all possible filter values. Users can choose one value.
    • Multiple Choice: A check list with all possible filter values. Users can choose multiple values.
    • Single Slider: Users can choose one value by sliding a point along a scale.
    • Range Slider: Users can choose multiple values between two points on a scale.
  • Value Sort Direction: Whether the filter values should display in ascending or descending order.
  • Filter Value Format: Select how the filter values should display. The controls here work similar to the Cell Formatting controls.
  • Initially Display Filter on Panel: Check the checkbox if the filter should appear automatically when the report is run. If unchecked, the user will need to add the filter each time the report is run.

Sorts

dOuISCOob0.png

Sorts tab of Report Viewer options dialog showing two Category sorts

 

To allow users to change existing sorts from ascending or descending in the Report Viewer. These sorts are accessed by clicking on the Open Dock GrabVert.png

(pre-v2021.1) or DockExpand.png (v2021.1+) icon on the side of the screen in the Report Viewer.
  • Display Sorts in Report Viewer: Select whether the user can see and modify sorts in the Report Viewer.
  • Title: Enter a user-friendly name for the sorting category which will be displayed in the Report Viewer.

Advanced Options

Note

The system administrator can enable or restrict access to certain Advanced Options. Check with them for more information.

The following Advanced Options are available in the Report Designer, for both Advanced Reports and CrossTabs:

  • JoinOption.png Joins — fine control over how the data objects on a report relate to each other.
  • Event.png Events — link a Server Event to the report. Server Events are custom bits of functionality created by the system administrator that occur when certain application triggers occur such as when the report is loaded, saved or during the execution cycle.
  • Vector.png Show SQL — view the generated SQL query which retrieves the data used on the report
  • Parameters.png Parameters — define reusable system variables, called Parameters, on the report.

To access these advanced options:

  • (v2021.1+) Click on the Advanced Advanced.png DropDownArrow2.png menu on the toolbar, then choose one of the Advanced Options from the menu
    f18C10n14M.png

Joins

If a report has two or more data objects, then information will only appear if the objects match. Using the Joins dialog, however, you may specify information you want to display regardless of whether or not it only exists in one of the data objects.

To learn more about joining data objects, review the Advanced Reports: Joins article.

Events

Event handlers may be applied to the report by advanced users for additional functionality.

screen.events_window.png
  1. Click Add2.png Add to add a new event to the list.
  2. Choose a server event trigger from the Event dropdown list. See Table A below for a list of server event names.
  3. Choose a server event action from the Action dropdown list. The actions available here are determined by the custom code entered into the application by the system administrator.
  4. Click Okay to save the server event to the report and close the dialog, or Cancel to close the dialog without saving.

An event can be removed from a report using the Delete image006.png

icon.

Upon triggering the event — e.g., OnReportExecuteStart will be triggered at the start of the report’s execution — the associated action will take place.

Table A — Server Event Descriptions
Server Event Name Description
OnDataCombined Called after all data is retrieved and combined from all data sources.
OnReportFailValidation Called when a report fails validation while being loaded for editing or execution.
OnReportExecuteInit Called after the report is loaded at the beginning of an execution, but before any processing has occurred.
OnReportExecuteStart Called at beginning of report execution processing.
OnReportExecuteEnd Called at end of report execution processing.
OnWebServiceExecuteEnd Called after data is retrieved from a Web Service Method.
OnExecuteSqlStatementConstructed Called after SQL statement due to report execution is constructed allowing any changes to be made.
OnFilterSqlStatementConstructed Called after SQL statement due to filter dropdown is constructed allowing any changes to be made.
OnParameterSqlStatementConstructed Called after SQL statement due to parameter dropdown is constructed allowing any changes to be made.
OnOkFiltersDialog Called after Ok button in Filter execution dialog is clicked.
OnOkParametersDialog Called after Ok button in Parameter execution dialog is clicked.
OnLoadReportParameters Called when the report parameters are loaded but before any processing has occurred.
OnScheduledReportExecuteStart Called at beginning of scheduled report execution.
OnScheduledReportComplete Called upon completed execution of a scheduled report prior to further processing regardless of whether or not the report executed successfully
OnScheduledReportExecuteSuccess Called upon successful execution of a scheduled report prior to further processing.
OnChartPreRender Called just before rendering a chart.
OnConfigLoadStart Called just after configuration file is loaded.
OnConfigLoadEnd Called after configuration file is loaded, any changes are made, and host application container is redirected to the reporting application.
OnRenameFolderStart Called just before renaming a report.
OnRenameFolderEnd Called after a report is renamed.
OnDataFieldsRetrieved Called after data fields are retrieved for a specific data object.
OnGetUserPreference Called to retrieve a user preference.
OnSetUserPreference Called to set a user preference.
OnReportSaveStart Called before a report is saved.
OnAfterLoadReportsList Called after reports built in this application have been loaded into the report tree object, for the purpose of allowing additional items to be loaded into the report tree.
OnExceptionThrown Called when an application exception is thrown.
OnExportCsvCell Called prior to exporting a CSV cell for the purpose of overriding the standard export results.
OnAfterReportExportSuccess Called at the end of a successful report export.

Show Generated SQL v2019.1–v2021.1

Show SQL v2021.1+

This dialog displays the SQL statement that will be sent to the appropriate data sources in order to execute the report.

F6dRQ8Zlgt.png

The SQL statement shown in the Execution SQL window is the exact statement that will be sent to the databases. It is generated after applying sorts, filters, parameters, and other items that affect the constructed SQL.

Report-Level Parameters v2019.1.3+

Advanced users may also define their own report-level parameters. The Parameters window provides an interface for users to view existing non-hidden system-level parameters and create new parameters that are only present on the report.

75d2QJWHcj.png

To create a new report-level parameter:
  1. Click the Add button located in the top-right corner.
  2. Define a unique Name. This value will act as the parameter’s identifier within the report.
  3. Specify a Type for the parameter, the following are available:
    • String
    • Date
    • Integer
    • Decimal
    • Boolean
  4. Enter a default or fixed Value. If left blank then the value will be interpreted as null.
  5. Specify whether or not to Prompt the user for a value upon report execution.
  6. Define the Prompt Text, the message that will appear when prompting the user for a value. A value for this field is required if the parameter is prompting.

XgjUi1nGLU.png

Prompting parameter window

Tip

Report-level and system-level prompting parameters appear in the same prompting parameter window at run time.

Report-level parameters can be reused throughout the report in the same manner as non-hidden system-level parameters. They may be used as cell values or within filters, sorts, and calculations. To utilize a parameter within a cell or formula, surround its Name with ‘@’ symbols (@ParameterName@).

For example, the following formula outputs True if an employee’s revenue is greater than or equal to the value of the Sales Quota parameter and False if otherwise:

{OrderDetails.UnitPrice}*{OrderDetails.Quantity} >= @[email protected]

Using Report-Level Parameters in Dashboards and Chained Reports

Like system-level parameters, report-level parameters may be used and set to prompt for values in Dashboards and Chained Reports when the associated Advanced Report is added as an existing report.

bnTskA7PWX.png

A report-level parameter defined on a Dashboard.

Within composite reports, however, these parameters can only take affect on the report-level and cannot be set to take affect on the Dashboard– or composite-level. This means that these parameters are only applicable on their associated Advanced Reports and cannot be modified to also apply to other reports or visualizations within a Dashboard or other composite report.

Internal Parameters

The following parameters are built into the application and can be used on any report. Their names are reserved and cannot be overridden.

Report Specific Parameters

The following parameters are utilized within reports to gather specific report information.

pageNumber

Description Display the current page number for HTML, PDF, and RTF on Advanced, Express and Chained Reports.
Example [email protected]@
Note: This parameter cannot be combined with other functions.

reportName

Description Returns the name of the report.
Example For a report named Transcripts in a folder named Student Documents [email protected]@ would return “Transcripts“.

reportFullName

Description Returns the name and file path of the report.
Example For a report named Transcripts in a folder named Student Documents [email protected]@ would return Student Documents/Transcripts.

User Specific Parameters

The following parameters are often used for user identification when loading user sessions rather than for reporting.

userId

Description Returns the unique ID of the current user.
Example [email protected]@

companyId

Description Returns the unique ID of the company (or group) that the user belongs to.
Example [email protected]@

userEmail

Description Returns the email address of a specific user. Used to specify an email address for the “Reply To” email field of scheduled reports.
Example [email protected]@

Installation Specific Parameters

The system administrator can create additional parameters for inclusion in reports. Contact the system administrator for details on these parameters and their use.

Advanced Reports: Templates

Note

Document Templates are an optional feature. Check with the system administrator for more information.

An Advanced Report can be used to dynamically fill out fields in forms and other documents. Placeholders in the document are dynamically linked to fields in the report. When executed, the form or document is merged with the report data.

screen.templatereport.png

Report layout in the Advanced Report Designer

screen.templatepreview.png

Report data

screen.templateout.png

W9 template form with data merged from report

This article covers the three stages of working with document templates:

  1. Creating Template Documents
  2. Linking Document Templates to a Report
  3. Executing Template Reports

1. Creating Template Documents

The process for making templates differs between the three supported document types: PDF, Word (.doc, .docx and .rtf), and Excel; as do the available features.

Caution

Close the template file before running or saving a report that uses it.

PDF Templates

PDF templates support static fields and limited-repeating fields. PDFs are convenient for pre-existing and standardized forms, such as for government or business.

To create a PDF template:

  1. Open the form in a PDF editor program, such as Adobe Acrobat or PDFescape.
  2. Add form fields where you will insert report data. For fields where text may span multiple lines, select the multi-line property.
  3. Give each form field a unique name following these guidelines:
    • For static fields, which appear only once per template instance — use any name, with the exception of the format reserved for repeating fields.
    • For repeating fields, which are mapped to consecutive values in a repeating cell or in a detail section — use the following naming format: Name.0, Name.1,...
      Where Name is shared by the repeating fields, and 0 maps to the first value, 1 maps to the next value, and so on.
    • For checkboxes — use an If() function whose results are “X” for a checked box and ” ” (space) for an unchecked box. For example, =if({Employees.Title} = 'Sales Representative', 'X', ' ').
  4. Save the PDF. Then continue with the instructions in 2. Linking Document Templates to a Report.

Word Templates

Word templates support static fields, limited and unlimited-repeating fields, and conditional suppression.

Tip

Supported file types are .doc, .docx, and .rtf. Report templates exported as “RTF” will save to the original file type.

To create a Word template:

  1. Open a document in Microsoft Word or a compatible document editor.
  2. Add text where you want to insert report data.
  3. Select the text, or in the case of repeating fields, a region of text, and insert a bookmark.
    screen.wordtemplate_bookmarksadded.png
  4. Give each bookmark a unique name, as follows:
    • For static fields, which appear only once per template instance — use any name, with the exception of the formats reserved for repeating and conditional fields.
    • For limited-repeating fields, which are mapped to consecutive values in a repeating cell — use the following naming format: FieldName_0, FieldName_1, ... Where Name is shared by the repeating fields, and 0 maps to the first value, 1 maps to the next value, and so on.
    • For unlimited-repeating fields, which are mapped to all the values in a repeating cell — use the following naming format: RepeatForEach_FieldName Where FieldName is a unique name. A RepeatForEach section in templating follows similar structure and purpose to grouping within reports. It is used to organize information under repeating groups within templates, arranging related information on the same page and separating groups with page breaks.
    screen.wordtemplate_bookmarks.png

    Important

    Bookmark formatting for unlimited-repeating fields must follow specific spacing requirements. The opening bookmark bracket should be placed one line before the repeating field section begins, and the closing bookmark bracket should be placed one line after the repeating field sections ends. Refer to the Employee Information example above for a visual reference. If this formatting is not followed, an “itemStart and itemEnd must be contained in one text body” error may be thrown.

  5. Optional: To conditionally show or hide text:
  6. Select the text and add a bookmark with the following naming format: KeepIF_FieldName Where FieldName is a unique name.
  7. In the report, map this field to a cell with a formula that returns 1 if the text should be shown, and 0 if the text should be hidden. For example, =If({Products.ProductName} = "Chai", 1, 0)
  8. Save and close the file. Then continue with the instructions in 2. Linking Document Templates to a Report.

Microsoft Excel Templates

Excel templates work differently than other types. Templates are used to fill Excel columns with report data. This is useful for passing data to Excel charts, pivot tables, and macros.

To create an Excel template:

  1. Open a workbook in Microsoft Excel or a compatible spreadsheet editor.
  2. The first worksheet is used for dynamic report data. Repeating cells are mapped to columns in the worksheet. For each column where you will add report data, enter a unique name to the topmost cell in the column. All following cells must be empty. All other worksheets will remain unchanged by the report.
    screen.exceltemplatefile.png

    Formatting an Excel file to be used as a template

  3. Save the file. Then continue with the instructions in 2. Linking Document Templates to a Report.

2. Linking Document Templates to a Report

To use a report to fill out a template:

screen.reporttemplatesexmaple_pdf.png

Editing of fields in exported PDF templates, v2018.2+

  1. Enter field data in cells on the report. For repeating data:
    • Repeating cells mapped to static template fields make a new instance of the template for each repeat.
    • Repeating cells mapped to limited-repeating template fields make a new instance of the template each time the number of values exceeds the limit.
      Note: This is often undesirable. Ensure that there are appropriate constraints on your data and enough fields to fit it all.
    • Repeating cells mapped to unlimited-repeating template fields never make a new instance of the template. Overflowing data is cut off.
  2. pre-v2021.1: On the SettingsMenu.png Settings menu, click Template.png Template to open the Report Templates dialog. Select an existing template or click the Upload button to upload a new one.
  3. v202.1+: On the SettingsMenu.png Advanced  menu, click Template.png Templates to open the Report Templates dialog.
  4. For each template field:
    • Select a report cell containing text or data. Images, visualizations, and other widgets are not supported.
    • Leave it blank. Any bookmarked text shows as-is in the output.
    • Select whether or not to allow editing of that field in the exported PDF file using the Allow Edit checkbox. v2018.2+
  5. Click OK.

To remove a template from a report:

  1. From the Template dialog, select the blank option from the template list.
  2. Click OK.

3. Executing Template Reports

To generate the filled out forms or documents, simply Export the report in the same format as the template file (e.g. for a PDF template file, export the report as a PDF. For a Word template, export as RTF). Reports can be exported from the toolbar or from the main menu.

Tip

Template reports must be exported in the same file type as the template (i.e. a PDF template report must be exported as a PDF file). Review the General Section of the Report Options article for details on how to control report export types.

Referencing Data Exported to Excel Templates

When using an Excel Template there are two ways for Charts or Pivot Tables to reference the populated report data:

  • Named Ranges
  • Row References

Named Ranges

Excel has a concept of a Named Range which can be used by Charts or Pivot Tables to refer to a range of cells. When building the template, name ranges by:

  1. On Excel’s ribbon, navigate to the Formulas tab and click the Name Manager icon.
    4862xgbx5Z.png
  2. Click New to add a new named range.
    1. The Name must match the name of the first worksheet in the file.
    2. The Scope should be Workbook if the chart or PivotTable will reside on a different worksheet than the first one.
    3. Optional: add a comment
    4. In the Refers to field, select the upper left and upper right boundaries of the range. For example, to select all of the data from columns A–J, select those cells or enter DATA!$A$1:$J$1.

      Note

      When the report is exported, the range will automatically be expanded to include all of the rows.

  3. When building the Excel chart or PivotTable, use the Named Range created in steps 1–2 as its data source.
    s7jJmjmH9o.png

Row References

Instead of using Named Ranges, each Chart or PivotTable can be set to reference the first two rows on the first worksheet. For example, a template with 5 columns would reference =Sheet1!$A$1:$E$2. When the report is exported, the range will automatically be expanded to include all of the rows.

Advanced Reports: Joins

Caution

The system administrator can enable or restrict access to certain Advanced Options, including Joins. Check with them for more information. The Joins dialog is recommended for advanced users only.

Joins describe how the Data Objects on a report are related to each other. When two objects are joined, a field in the first object is associated with a field in the second object. Wherever a value in the first object’s field matches a value in the second object’s field, that value’s rows from each object come together to form a composite row. The table produced by all the composite rows is the resulting data that appears on the report.

For example, take the following objects, Orders and Products. The Orders.ProductId field corresponds with the Products.Id field. When the objects are joined from Orders.ProductId to Products.Id, the rows are connected wherever those two fields have matching values.

custom.joins_basic_demo.png

Categories joined on Orders.ProductId >> Products.Id

The result of this join is the following composite rows. These objects have a one-to-one relationship, because each row in the “left” object joins at most one row in the “right” object.

custom.joins_basic_row.png

Joined Data Objects. Products.Id is omitted.

Tip

Data Objects could be joined along more than one set of fields; composite rows are formed only when all sets have matching values.

For two data objects to be co-present on a report, there must be a join path between them. They are either directly joined, or there is a path through one or more intermediate data objects. You do not have to configure joins manually as they already exist in the environment. However, if you want to learn how to add or adjust joins on a per-report basis, the following sections explain the options that are available.

Join Types

The join that was previously described is the most common type of join, an inner join. When an inner join is applied, rows in either data object that have no matching row in the other are excluded from the resulting table. However, you may not want to exclude these rows. To do so, you can change the type of join to an outer join.

For example, the row in the Products object with Products.Id = 12 has no matching row in the Orders object. With an inner join, this row is excluded from the output. If you want to see the Products rows that have no matching Orders row, you can change the join type.

This changes the join between these data objects to a left outer join, because all rows from the left object are included. The following rows result:

custom.joins_left_outer.png

Joined data objects with all Products rows. Products.Id is omitted.

Similarly, selecting the Orders data that does not have Products data checkbox changes the join to a right outer join, which includes all rows from the right data object. Selecting both checkboxes includes all rows from both categories; this is a full outer join.

Relationship Types

There are two types of join relationships: one-to-one and one-to-many.

In the previous example, the relationship between the data objects is one-to-one, because each row in the left object joins at most one row in the right object. Some categories have a one-to-many relationship, where each row in the left object joins zero or more rows in the right object.

A one-to-many relationship from objects X to Y is represented in the following diagram:

custom.1M_detail.png

Each X is joined to one or more Y

Reports with a single one-to-many join are well suited to grouping by the left data object. The data in these reports is generally well-formed and understandable.

However, when a report has multiple data objects with one-to-many joins, data can appear more disorganized and confusing. For example, the following diagram represents data from three objects: X, Y, and Z, where the relationships between X to Y and X to Z are both one-to-many:

custom.1Mx2_detail.png

Each X has 1 or more Y, and 1 or more Z

Because Y and Z are not directly related to each other, there are many rows with only Y or only Z. This can cause the report to be significantly larger, and to be difficult to read and interpret. This occurs even with inner joins, the most restrictive type, because by default there is no logic that deals with the relationship between Y and Z.

Read on for different ways of improving the structure of a report with multiple one-to-many joins.

Cartesian Processing

You could fill the blank spaces with supplementary data by disabling Special Cartesian Processing from the Joins dialog. Blank cells are filled in with data that is repeated directly from the previous row. The following diagram demonstrates how this works:

custom.1Mx2_no_cartesian.png

Disabling Special Cartesian Processing

The shaded cells represent data that has been repeated from the previous row. This can make the report more readable. However, this approach poses a problem: Blank cells indicate a lack of a relationship between two fields, so filling in these spaces with artificial data can obfuscate any relationship between Y and Z. This can decrease the accuracy of the report.

There are better ways to improve the readability of such a report without sacrificing accuracy:

  • Use repeating groups to show the X to Y and X to Z relationships in entirely separate sections. This is suitable if any relationship between Y and Z is irrelevant or nonexistent. See Sections for more information.
  • Hide some or all of the rows which do not have data for both Y and Z. This is suitable if you want to highlight an implicit or indirect relationship between Y and Z.

Modifying Joins on a Report

The Joins dialog shows all direct and implicit joins on the report. Direct joins can be added, modified, or removed from the report.

xBOUeaCuxl.png

Joins dialog for a report with two one-to-many joins, so the Special Cartesian Processing dropdown is visible.

Create a New Join

  1. Select From and To categories.
  2. Click Add2.png Add.
    1. Click Add2.png Add Condition then select From (left column) and To (right column) fields.

      Tip

      If there are multiple conditions, only the rows that satisfy all the conditions are joined.

    2. Click Okay
  3. Click Okay

To restore the default joins, click the Refresh

Recreate button, then click Okay.

Modify a Join

  1. Click the Edit Edit.png icon next to the join to edit.
  2. Add, remove, or modify conditions.
  3. Click Okay.

To remove a join, click the Delete X

icon next to the join to delete, then click Okay.

Delete a Join

To remove conditions, click the Delete X

icon next to the condition to delete.

Advanced Joins

You may be able to specify join conditions that are more complex than column equality.

Note

Advanced Joins only apply to a single data source.

Type

Instead of joining between two columns, one or both sides of the join may instead be an arbitrary expression, constant, or SQL sub-query.

To change the expression type for one side of a join condition, select one of the following from the Type list:

  • Value: One or more constant values separated by commas
  • Expression: Formula or calculation
  • SubQuery: SQL query

Then enter the value in the Value field.

Operator

As opposed to the default equality (=) operator, which joins fields from the left expression to matching fields from the right expression, a join condition can use one of several alternative operators instead. For example, the inequality (!=) operator joins fields on the left to non-matching fields on the right. To do so, select one of the alternative operators ;from the Operator list:

  • != not equal to
  • > greater than
  • >= greater than or equal to
  • < less than
  • <= less than or equal to equal
  • IN: match one or more values, either specified or calculated from a subquery

Grouping

When a join has two or more conditions, you can specify how the conditions should be met as a group in order for the join to take effect.

To specify that either one of two conditions will satisfy part of the clause, select OR from the Conjunction list for the first condition of the two.

To add parentheses around two conditions, select the Group checkbox for the first condition of the two.

You can preview the full join clause in the Summary field.

Advanced Joins

The v2017.2 release of Exago BI features several Join Enhancements, including the ability to join on inequalities, nested join expressions, and subqueries. Additionally, data objects can now be cloned, which allows for multiple different joins between objects, as well as the ability to join objects to themselves.

These enhancements allow developers to programmatically define complex joins “on-the-fly” in the application API, without needing to write SQL directly.

Note

To modify advanced joins in the Exago UI, see Joins – Advanced Joins. Advanced joins are not supported in the Admin Console. Advanced joins cannot be applied across multiple data sources.

Join Expressions

The left and right side of application joins now support complex expressions with the following logic:

Operators: EQ (=), NE (<>), LT (<), GT (>), LE (<=), GE (>=), IN

Conjunctions: AND, OR

Expression types: Column, Constant, SubQuery, Expression

Note

For a list of all constants, please see the Constants and Enumerators article.

Example

The JoinColumn and KeyColumn API objects have been extended with support for the additional logic. The following example demonstrates how to write a complex join statement in the API:

// INNER JOIN Products ON Categories.CategoryId > Products.CategoryId
// OR (Categories.CategoryId = Products.CategoryId
// AND Categories.CategoryId = Products.ProductId)

var join = new Join(api.PageInfo)
{
  EntityFromName = "Categories",
  EntityToName = "Products",
  Type = (int)JoinType.Inner,
};

join.JoinColumns.Add(new JoinColumn(
  new KeyColumn(join.EntityFromName, "CategoryId", JoinExpressionType.Column),
  JoinComparison.GT,
  new KeyColumn(join.EntityToName, "ProductId", JoinExpressionType.Column),
  JoinConjunction.OR,
  0 // nesting level - number of parens surrounding the expression
  ));

join.JoinColumns.Add(new JoinColumn(
  new KeyColumn(join.EntityFromName, "CategoryId", JoinExpressionType.Column),
  JoinComparison.EQ,
  new KeyColumn(join.EntityToName, "CategoryId", JoinExpressionType.Column),
  JoinConjunction.AND,
  1
  ));

join.JoinColumns.Add(new JoinColumn(
  new KeyColumn(join.EntityFromName, "CategoryId", JoinExpressionType.Column),
  JoinComparison.EQ,
  new KeyColumn(join.EntityToName, "ProductId", JoinExpressionType.Column),
  JoinConjunction.OR,
  1
  ));

// api.Joins.Add(join);    // add at the application level
// report.Joins.Add(join); // or at the report level

Join XML Schema

The join XML schema has changed to support these enhancements. The <joincol> attribute is deprecated and replaced with <clause>:

<clause>
  <left_entity /> <!-- added in v2017.3 -->
  <left_side />
  <right_side />
  <conjunction />
  <comparison />
  <left_side_type />
  <right_side_type />
  <level />
</clause>

For details, see Config File XML Reference – Joins.

Reports created in older versions will be automatically converted to the new schema when they are saved in the Advanced Report Designer. The Exago BI configuration file will not be converted automatically.

Example

<join>
 <affinity>Global</affinity> 
 <entity_from_name>Categories</entity_from_name>
 <entity_to_name>Products</entity_to_name>
 <join_type>inner</join_type>
 <relation_type>1M</relation_type>
 <weight>0</weight>
 <clause>
 <left_side>CategoryID</left_side>
 <left_side_type>Column</left_side_type>
 <comparison>GT</comparison>
 <right_side>CategoryID</right_side>
 <right_side_type>Column</right_side_type>
 <conjunction>OR</conjunction>
 <level>0</level>
 </clause>
 <clause>
<!-- <left_entity>New Left Entity Name would go here if needed -->
 <left_side>CategoryID</left_side>
 <left_side_type>Column</left_side_type>
 <comparison>EQ</comparison>
<!-- <right_entity>New Right Entity Name would go here if needed -->
 <right_side>CategoryID</right_side>
 <right_side_type>Column</right_side_type>
 <conjunction>AND</conjunction>
 <level>1</level>
 </clause>
 <clause>
 <left_side>CategoryID</left_side>
 <left_side_type>Column</left_side_type>
 <comparison>EQ</comparison>
 <right_side>ProductID</right_side>
 <right_side_type>Column</right_side_type>
 <conjunction>AND</conjunction>
 <level>1</level>
 </clause>
</join>

Entity Cloning

Data Objects (also referred to as entities) can be cloned on a per-report basis, to allow objects to be joined in multiple ways.

The following example demonstrates how to add a cloned entity to a report:

Example

report.Entities.Add(api.Entities.GetEntityClone(
  "Categories",    // original entity
  "Category_Clone" // cloned entity name
));

The clonedFrom property indicates the original entity that a clone was created from.

Entity Report XML Schema

The entity report XML schema was updated to support an optional <clone> attribute, indicating that an entity is a clone of an existing one:

<entity>
  <entity_name>Categories_Clone</entity_name>
  <clone>Categories</clone>
</entity>

Cloned entities can be added to reports by editing the XML directly, if desired.

Configuration Settings

A hidden flag was added to the configuration file in support of entity cloning.

  • <aliasallentities>

As entity names may no longer be unique, the entity Id property (which must always be unique) can be used as a table alias in any application generated SQL. This can be enabled by setting the <aliasallentities> attribute in the configuration file to True. The default value is False, meaning all entities will not be aliased with the ID property. Setting to True will enable the aliasing behavior.

Advanced Reports: CrossTabs

Use a CrossTab, or cross tabulation, for grouping and summarizing data fields that expands vertically and horizontally depending on the number of data groupings. CrossTabs are also known as two-way tables, contingency tables, or pivot tables.

firefox_8Co2bLE0bx.png

A CrossTab report built with the CrossTab Report Wizard

Create a CrossTab

CrossTab Reports can be added to an existing report from the Report Designer, or they may be created as a new report from the main menu.

From the Report Designer Toolbar

To add a CrossTab to a report in the Report Designer:

  1. Select a Group Footer (including Footers in a Repeating Group) or Report Footer cell.
  2. Open the CrossTab Data Designer dialog:
    • (v2021.1+) Click the Insert Insert.png DropDownArrow2.png icon on the toolbar, then click Crosstab.png CrossTab. The dialog resembles the Layout tab described below.

From the Main Menu CrossTab Report Wizard

CrossTabs are created from the Main Menu just as any other report is. Creating a CrossTab from the Main Menu will launch the CrossTab Report Wizard.

The CrossTab Report Wizard is an interactive tool which will walk through the process of creating a new Advanced Report with a CrossTab embedded within it. All of the settings in the wizard can be modified in the Report Designer after the report is created.

The CrossTab Report Wizard has four tabs: Name, Categories, Filters, and Layout. All tabs except Layout are required to create the new report.

Name

Name section

In the Name section, enter a name for the report and select a Folder where it will be saved.

The report name can be up to 255 characters long, but cannot contain the following special characters

? : /  * " < >

Enter an optional description for the report in the textbox.

Categories

Categories section

In the Categories section, select the Data Objects to include in the CrossTab. It is important to understand the difference between Data Categories and Data Fields. Data objects are arranged into folders. Those objects are further expanded into fields. A field is a parcel of data from a data object, such as the name of a Product or an Employee ID number.

  • To add a Data Object, either drag and drop it to the Data Object Name Column, click the Add button, or double-click the field name
  • To search for a specific Data Object or folder, type its name into the Search field.
  • To see what fields are in a Data Object, click the View Data Object Fields i icon.
  • Check the Hide Repeated Values checkbox to stop duplicate information from appearing on the report.
  • Each data object must be referenced by a unique Alias. The alias can also be used to provide a different name for the data object. This column will only appear if enabled by the system administrator. See Advanced Reports: Data Objects for more information.
  • To remove a Data Object, click the Delete X icon at the end of the row.

Filters

In the Filters tab, create statements to filter the data at runtime.

Filter section

A date filter applied to output data from the years 2015 to 2016

There is no limit to the number of filters that can be defined. Filters can be numeric (up to eight decimals) or alphanumeric.

    • To filter a Data Field, either drag and drop it to the Filter By column, click  the  Add button, or double-click on its name.
    • To filter using a custom or built-in formula, click the Add Formula button.
      More information about how to use this feature is contained in the Filter by Formula article.
    • Use the Move Item Up ^ and Move item Down v icons to move the rows to set the filter priority. The top filter has the highest priority.
    • To remove a filter, click the Delete X icon at the end of the row.

Detailed information about creating and editing filters can be found in the Filters article.

Layout

In the Layout tab, design the CrossTab by moving Data Fields into the Row Header, Column Header, and Tabulation Data panels.

Layout Section
Row Headers

Row Headers expand a CrossTab vertically. A CrossTab has a row for each unique value of a Row Header. For example, if you were using sales data, you may have the Row Headers Category.CategoryName and Products.ProductName to provide rows for each product grouped by category.

  • To add a Row Header, either drag and drop it to the Row Header Source panel or use the Add Row Header + -- icon
  • Click the Formula Editor fx icon to insert a formula into the Row Header.
  • Click the Edit Headerpencil icon to open the Header Options menu.
    Header Options dialog
    • Set a label for the Row Header. This label will appear at the top of the CrossTab.
    • Select a sorting method and direction:
      • None: Does not sort the Row Headers.
      • Header Value (Text): Sorts the Row Header by its values as though they are text.
      • Header Value (Number): Sorts the Row Header by its values as though they were numbers.
      • Tabular Totals: Sorts the Row Header by the totals of the Tabulation Data.
    • Select where to display subtotals by using the Placement dropdown:
      • None: Does not display subtotals.
      • Top: Displays subtotals above the Tabulation Data for each Row Header value.
      • Bottom: Displays subtotals below the Tabulation Data for each Row Header value.
    • Set a label for the subtotals.
  • Use the Move Item Up ^ and Move Item Down v icons to rearrange the order of the Row Headers.
  • To remove a Row Header, click the Delete X icon.
Column Headers

Column Headers expand a CrossTab horizontally. A CrossTab has a column for each unique value of a Column Header. For example, if you were using sales data you may have the Column Headers Year({Order.OrderDate}) and MonthName({Orders.OrderDate}) to provide columns for each month grouped by year.

Column Header example

CrossTab Design Wizard with two column headers

  • To add a Column Header, either drag and drop a data field to the Column Header Source pane or click the Add Column Header + ||| icon.
  • Click the Formula Editor fx icon to insert a formula into the Column Header.
  • Click the Edit Header pencil icon to open the Header Options menu.
    screen.ct_columnheader_options.png

    Column Header Options dialog

    • Set a label for the Column Header to appear at the top of the CrossTab.
    • Select a sorting method and direction:
      • None: Does not sort the Column Headers.
      • Header Value (Text): Sorts the Column Header by its values as though they were text.
      • Header Value (Number): Sorts the Column Header by its values as though they are numbers.
      • Tabular Totals: Sorts the Column Header by the totals of the Tabulation Data.
    • Select where to display subtotals by using the Placement dropdown:
      • None: Does not display subtotals.
      • Left: Displays subtotals to the left of the Tabulation Data for each Column Header value.
      • Right: Displays subtotals to the right of the Tabulation Data for each Column Header value.
    • Set a label for the subtotals.
  • Use the Move Item Up ^ icon and Move Item Down v icon to rearrange the order of the Column Headers.
  • To remove a Column Header, click the Delete X icon at the end of the row.
Tabulation Data

Tabulation Data provides information when data exists for both the Column Header and Row Header values. For example, if you have a Row Header on products and a Column Header on the month, then Tabulation Data of Orders.OrderID may use the Count function to display how many orders contained each product each month.

CrossTab wizard with tabulation data sources

CrossTab Report Design Wizard with row header, column header and tabulation data sources

  • To add a Tabulation Data field, either drag and drop it to the Tabulation Data pane or click the Add Tabulation Data icon.
  • Click the Formula Editor fx icon to insert a formula into the Tabulation Data.
  • Click the Edit Tabulation Data pencil icon to open the Tabulation Options menu.
    screen.ct_edittab_order_count.png
    • Set a label for the Tabulation Data to appear at the beginning of each row.
    • Use the Method dropdown to select the summary function to be applied to the Tabulation Data:
      • Sum: Totals the Tabulation Data.
      • Count: Counts the Tabulation Data.
      • Average: Takes the mean of the Tabulation Data.
      • Minimum: Displays the lowest value in the Tabulation Data.
      • Maximum: Displays the highest value in the Tabulation Data.
    • Use the Value dropdown to select how the Tabulation Data should be displayed:
      • None: Displays the value of the Tabulation Data without applying any formula.
      • Aggregate: Display the result of the selected method.
      • Percent of Row: Display the result of the selected method as a percentage of the row total.
      • Percent of Column: Display the result of the selected method as a percentage of the column total.
  • Use the Move Item Up ^and Move Item Down v icons to rearrange the order of the Tabulation Data.
  • To remove a Tabulation Data source, click the Delete icon X.

CrossTab Themes

The Theme dropdown can be used to quickly style the CrossTab using a predefined theme.

nLQFBwKYpg.png yp4Hwd4qAf.png 1uBkgNj5Tp.png w10wwyBZZI.png

 

The same CrossTab as seen in the Report Designer and Report Viewer, with the Tokyo Night and Office Park themes applied.

Further styling can be done in the Report Designer.

CrossTab Options

Settings that affect the entire CrossTab are controlled in the CrossTab Options Menu. Open the CrossTab Options Menu by clicking the icon.generaloptions.png

Options button. Using this menu, you can adjust the following settings:
CrossTab Options menu

CrossTab Options Menu

 

General
  • Use the Row Headers Placement dropdown to determine how the Row Headers are displayed:
    • Columns: Display the Row Headers in columns from left to right in the order they appear in the Row Header Source panel.
    • Hierarchical: Display Row Headers in a hierarchical structure using indentation to display their order.
  • Check Repeat CrossTab Header every new page to repeat Row Header labels and Column Headers on each new page.
Grand Total Row

To get a total for each column, select Top or Bottom from the Placement dropdown in the Grand Total Row section and provide a label in the Label text box.

Grand Total Column

To get a total for each row, select Top or Bottom from the Placement dropdown in the Grand Total Column section and provide a label in the Label text box.

Preview

1N631UQvhR.png

A preview layout of the steps applied above

At the bottom of the Layout section, a preview will display how the CrossTab will appear based on the fields that have been added.

Finally, clicking the Finish button will create the report and open the CrossTab Report Designer.

Work with CrossTabs in the Report Designer

Upon entering the Report Designer, the new CrossTab appears in the Report Footer section:

v1A3tmgjZk.png

CrossTab Report in Report Designer v2021.1+

 

To edit the CrossTab after its creation open the CrossTab Data Designer dialog by either:

  • right-clicking on the CrossTab then clicking Edit CrossTab or
  • double-click anywhere on the CrossTab

The CrossTab Data Designer dialog resembles the Layout tab of the CrossTab Report Wizard.

Visualizations and formulas may not be added to the CrossTab. The following error message appears if trying to add one of these to the report:

screen.ct_notapplicablewarning.png

CrossTab Formatting

CrossTabs often contain a large amount of information and may appear cluttered if they are not well formatted. To help avoid overwhelming appearing reports:

  • Set predefined widths of rows containing long strings of characters or integers.
  • Use a theme or apply color to cells via cell formatting to help differentiate between certain sections.
  • Add borders with cell formatting to detail and header sections.
  • Abbreviating longer strings using the built-in String functions. For example, Left(MonthName({Orders.OrderDate}), 3) will output the first three letters of each month.
  • In the Report Viewer Options, uncheck Simulate PDF.
  • Use filters to limit the size of the data set.

Note

Conditional formatting expressions are not evaluated for empty CrossTab cells.

Cell Formatting

Use the Format Cells dialog to customize how data values will display, add custom cell borders, and apply formatting based on certain conditions. The dialog is divided into three tabs: Number, Border and Conditional.
0OCKMWfT5p.png

Number Tab

If a cell has a numeric, date, or time value use Number formatting to choose how the value should appear on the report. For example, add a dollar sign ($) to monetary values and separate each three digits to make values easier to read.

Numeric values with currency styled formatting

The following options for Number formatting are available:

General

This is the default option. The application will examine the data then set formatting automatically. There are a few rules to consider when choosing General based on what data type appears in the cell:

  • The application will first check to see if the value is a number, then a date and then assume it is text if no other criteria are met.
  • If the cell is determined to be a numeric value, and the Apply Numeric Decimal Places to General Cell Formatting feature is enabled by the system administrator, then a decimal separator character and a number of decimal places are included with the value. The number of places and the separator character are determined by the system configuration. To override these settings, change formatting to Number and set the corresponding settings.
  • If the cell is determined to be a currency value, and the Apply General Currency Right Alignment feature is enabled by the system administrator, the value is automatically right-aligned in the cell.

Number

Format the data as a number, currency, or percentage. A number of optional settings control specific formatting options:

Tip

Leave the Symbol field, the Use 1000 Separator symbol field and Use Currency Symbol symbol field at their defaults when possible. This way, they can be automatically overridden by the application when the cultural or locale settings are changed. For example, the system can display £ in place of $. Setting a value for these symbols at the cell level will set that symbol for all executions of the report, regardless of cultural/locale settings.

  • In the Decimal Places field, enter a number for how many decimal places to display.
  • Use the Symbol field to override the system’s default decimal separator character. Changing the value of this field from the default will override the symbol for all executions of the report, regardless of the user’s local/culture settings. Leave as the default (or change back to the default) to allow the application to change the symbol based on local/culture settings.
  • To show a delimiter every three digits, check the Use 1000 Separator checkbox. Then, in the field to the right, enter a symbol to use as the delimiter. Like the Symbol field, changing the value of this field from the default will override the symbol for all executions of the report, regardless of the user’s local/culture settings. Leave as the default (or change back to the default) to allow the application to change the symbol based on local/culture settings.
  • To show a currency symbol before the number, check the Use Currency Symbol. Then, in the field to the right, enter the symbol to show. Like the Symbol field, changing the value of this field from the default will override the symbol for all executions of the report, regardless of the user’s local/culture settings. Leave as the default (or change back to the default) to allow the application to change the symbol based on local/culture settings.
  • To show a percent sign (%) after the number, check the Append Percent Sign (%) checkbox.
  • To show no value if the number is 0, check the Blank When Zero checkbox.
  • To show a negative sign (-) in front of negative numbers, check the Show Negative Symbol checkbox.
  • To show parentheses ( ) around negative numbers, check the Show Parenthesis checkbox.
  • To show negative numbers in a different color, enter a hexadecimal color code in the Color field or use the color picker to choose a color.

Date

Format the data as a date, time, or date and time.

Optional: Choose which date and time components to display, and how to show them. Either:

  • select one of the patterns from the Date/Time Format list, or
  • enter a custom pattern using the following variables:
Variable Description Result for sample date of “Sept-2-1907 5:08:04 PM”
d day of the month, from 1 to 31 2
dd day of the month, from 01 to 31 02
ddd day of the week, abbreviated name Mon
dddd day of the week, full name Monday
M month, from 1 to 12 9
MM month, from 01 to 12 09
MMM month, abbreviated name Sept
MMMM month, full name September
y year of the century, from 0 to 99 7
yy year of the century, from 00 to 99 07
yyyy year, from 0001 to 9999 1907
h hour using a 12 hour clock, from 1 to 12 5
hh hour using a 12 hour clock, from 01 to 12 05
H hour using a 24 hour clock, from 0 to 23 17
HH hour using a 24 hour clock, from 00 to 23 17
m minute, from 0 to 59 8
mm minute, from 00 to 59 08
s second, from 0 to 59 4
ss second, from 00 to 59 04
t A/P P
tt AM/PM PM

Text

Does not apply any formatting to the data, and show it exactly as it appears in the data object.

Border

Alter the width and color of the cell borders. To set a color for a cell border, enter a color code or select a color from the picker. To set the width of the border, enter a pixel value, or use the arrows to make the border thicker or thinner.

To set all the cell borders to the same color and width, check the Make Borders Uniform checkbox.

Tip

If gridlines are enabled for the Report Viewer, then cell borders will show in addition to the gridlines.

F5VOKPUzo2.png

Choosing border colors and widths

Conditional Formatting

A conditional format allows you to format a cell according to its output data. The cell and text styles can depend on its data value, and you can even conditionally hide rows or entire sections. This can be useful for highlighting certain values in a data set, such as outliers from a trend.

Conditional Formatting uses a formula to set the condition. The formula must evaluate to True or False. If True, the formatting will be applied otherwise it will not. Conditional formulas are often based on data in the cell, but they can also be based on other cells, data fields, or other information about the report.

Note

Conditional formatting expressions are not evaluated for empty CrossTab cells.

screen.conditional_formula.png

Example of a formula that evaluates to True or False

To set or modify the format of a cell based on a conditional formula:

M3NfBWlOiT.png

Conditional format tab of Format Cells dialog

  1. Click + Add to create a new condition.
  2. From the Action list, select an action to occur if the condition is met. If applicable, select an attribute for the action from the Attribute list.
    Action Attribute
    Foreground Color Enter a formula, hexadecimal color code or select a color using the color picker which will change the foreground (text) color of the chosen cell.
    Background Color Enter a formula, hexadecimal color code or select a color using the color picker which will change the background color of the chosen cell.
    Font Family Select a font to change the text to.
    Font Size Enter a font size, in ems, to change the font size to.
    Bold no attribute
    Italic no attribute
    Underline no attribute
    Horizontal Alignment Choose from Left, Right, Center or Justify to which the text in the cell will change to.
    Vertical Alignment Choose from Top, Middle or Bottom to which the text in the cell will change.
    Suppress Row no attribute
    Suppress Section no attribute
    Page Break no attribute

    Tip

    Hexadecimal color values may be upper or lowercase and may contain the # prefix character, but it is not required.

  3. Click the Formula Editor fx icon to enter a formula for the condition. The formula must evaluate to True or False. The Action will be applied to the report when the formula evaluates to True.

    To use the value of the current cell in the formula, use the function CellValue(). Click +

    Cell Value to insert CellValue() into the formula.

A cell can have multiple conditional formats, each of which is a separate row in the Conditional tab. If two or more overlap, the lower condition takes precedence. Click the Move Row Up^ and Move Row Downv icons to reorder the precedence of the conditions.

TCUCQfOHvr.png

Multiple conditions and formats may be added for a cell

Using Formulas as Conditional Formatting Colors v2019.2+

In addition to selecting a static color with the color selector, a formula may be used to change the colors of a cell when conditional formatting.

A formula which returns a value convertible to a hexadecimal color code can be entered as the Attribute when the Action is Foreground Color or Background Color. When using this option, conditional formatting color properties can be determined at runtime instead of report design time.

One application of this feature is to read color values from a data source and use that color data to apply formatting to a cell.

GmDIc4yGLs.png
Color Selector with Set by Formula button

Clicking on the Color Selector‘s fx Set by Formula button will open the standard Formula Editor. All formula elements available in conditional formulas are available, including CellValue(), references to other cells, application parameters and Data Objects. Aggregate functions are not available in attribute formulas.

Tip

Hexadecimal color values may be upper or lowercase and may contain the # prefix character, but it is not required.

If the formula returns null or an empty string, the conditional formatting is not applied. If the formula returns a value that is not convertible to a hexadecimal color code, an error message is displayed in the cell.

Examples

This example uses conditional and logical functions to combine multiple conditions into one clause.

If(And(CellValue()>=1000, CellValue()<10000), "#FFFFFF", If(CellValue()>=10000, "#ECECEC", "#00000"))

This example uses an application parameter named ConditionalColor to select a color to apply:

[email protected]@

This example simply refers to a Data Field that contains a hexadecimal color value to apply:

{Products.ProductColor}

A few examples of valid hexadecimal color codes:

#FFF
#c0c0c0
ff4c00
F90

Conditional Row Suppression

Conditional Row Suppression allows the user to hide rows of data that meet a predefined condition. This might be useful when certain fields do not apply to all records.

Address Example

The below example displays contact information for company employees residing in the UK and USA. The Employees.Region field stores State values for USA residents and null value for UK residents.

When building an Employee Directory report, the formula below might be used for the “Address” column to joining together each individual component of the employee’s address.

={Employees.Address} & ", " & {Employees.City} & ", " & {Employees.Region} & ", " & {Employees.PostalCode}

Here’s how this data is returned without the use of row suppression. Note that Employees.Region doesn’t return any information for Buchanan, Steven or Dodsworth, Anne but is necessary to show the State for Callahan, Laura and Fuller, Andrew.

nWRJpbmtwG.png

Conditional Row Suppression can be used in conjunction with another detail row to format the Address column on the report as appropriate for each employee’s country of residence. 

  1. Add another Detail row to the report and copy all of the formulas from the first one to the second. YWiuIW4bq9.png
  2. Modify the formula for the second row’s Address column to replace {Employees.Region} with {Employees.Country}. qCvFBc4TrV.png
  3. Select the first cell on the top detail row, and then click the Format Cell FormatCells.png icon on the toolbar.
  4. Switch to the Conditional tab of the Cell Formatting dialog.
  5. Click the Add2.png Add button at the bottom of the dialog to add a new condition.
  6. For the Action, choose Suppress Row from the dropdown. iWM2Q8KNUW.png
  7. Click the Formula Editor Formula.png icon to open the Formula Editor and enter this formula: Not({Employees.Country} = "USA") oQiKvA83oa.png
  8. Click Okay to close the Formula Editor and again to close the Cell Formatting dialog.
  9. Select the first cell of the second detail row, and repeat steps 3–8 for the second row. At step 7, enter this formula: {Employees.Country} = "USA"

Now, whenever the employee’s country is not the USA, the first row will be hidden and the second will be displayed. When the employee’s country is the USA, the second row is hidden and the first one will be used. When this report is executed or reported, the output will now look this, with the correct fields:

7dvCkSG97o.png

Notice for the employees living in the UK, the name of the country replaces a null value. For employees living in the USA, their state of residence appears.

Linked Reports (Drilldowns)

Linked Reports are reports linked from cells or charts as a means of exploring data points by “drilling down” into their background data. Use the Advanced Report Designer to add them.

The terms Linked Reports and Drilldowns are used interchangeably throughout the application and this document, but they refer to the same concept.

Note

Drilldowns work in the Report Viewer and Dashboard Viewer, but the linked data is not included in exported reports or dashboards.

AhY7cOv9cS.png

Drilling down from a column chart by clicking one of the chart elements

OKONYZJsf7.png

Drilling down from report data by clicking on the data in the cell

Drilldowns require a child report, which can be an Dashboard, Advanced, CrossTab or Express Report that contains the background data for the parent report. Drilldowns can be created on a Dynamic Cell or a chart by linking to the child report from the parent report. Clicking each cell value or chart series will filter the child report by its respective value before opening it. Depending on system configuration, the child report will open at the mouse cursor location, in the center of the screen or in a new report tab.

Note

Currently, the prompt window will not appear when drilling down into a child report that contains prompting parameters. However, this can be partially bypassed by adding the prompting parameter in a hidden cell on the parent report so that the user will be prompted at runtime for the parameter value.

Caution

Adding a drilldown to a cell may override or interfere with any linked Action Event on the cell. Adding a linked report to a chart may override some aspects of the chart’s basic interactivity.

Since drilldowns are themselves reports they can have visualizations, be exported, and even have their own drilldowns.

Linking Types

Default Linking

By default, the Data Field in the parent report’s linking cell filters the closest joined Data Field on the child report. The article on Joins has more information on data field joining. If there is no direct join path, then fields may be linked manually in the Fields tab of the Linked Report Wizard.

For example, a parent report links an Employees data field to a child report with an Orders category. The two categories are joined on Orders.EmployeeId >> Employees.Id. For each Employees row, its Employee.Id value filters the linked report down to the Order rows with matching Orders.EmployeeId values. Therefore, clicking on an Employee name in the parent report will drilldown to a list of orders that the employee made.

screen.link_child.png
screen.link_parent_with_child.png
Orders linked report filtered by Employee Id

Tip

Linking filters do not cascade down to grand-children, or child reports of the linked report.

Manually Defining Link Fields

To link on different fields or categories than the default link, use the Fields tab of the Linked Report Wizard. The From fields from the parent report filter the To fields on the child report. The Fields tab is suitable for the following situations:

Tip

The From fields from the parent report filter the To fields on the child report.

  • The default join is not the desired link to use
    Example: Linking on related fields other than the Id field, such as “Region”
    Employees.Region >> Orders.ShipRegion
  • No join exists between the From and To categories
    Example: Categories have related fields but are not joined, such as Orders and Suppliers
    Orders.ShipCity >> Suppliers.City
  • The From and To categories are the same
    Example: Fields are related to other fields in the category, such as Employee X supervises Employees Y and Z
    Employees.Id >> Employees.ReportsTo

Conditionally Link with Formula

Note

This feature is disabled in system configuration by default. Contact the system administrator for more information.

Use the Formula tab of the Linked Report Wizard to conditionally enable drilldowns on specific values. By default, once a drilldown is setup, all records on the report can drilldown to the child. By adding a Formula, only values meeting the condition will permit drilling.

The formula must return True or False. The formula is evaluated for each row in the parent report, and if the condition is not met, drilling down to the child report is not enabled.

For example, the following formula could be used to create a drilldown to a report showing a suppliers list if and only if there are items on order or the quantity in stock is less than the product’s reorder level. Those products that do not meet that criteria cannot be drilled down.

Or({Products.UnitsOnOrder} > 1, {Products.UnitsInStock} <= {Products.ReorderLevel})

FoxitReader_PHwd6gTCqp.png


Therefore, only Queso Cabrales, Gorgonzola Telino, and Marscarpine Fabioli meet the criteria. Clicking on the other products will have no effect.

See the Formulas article for assistance with conditional formulas.

Dashboards as Child Reports

Beginning in v2019.2+, Dashboards can be drilled down to as child reports. Dashboard Drilldowns open in the standard Dashboard Viewer in a new tab. There are a few special considerations when drilling down to a Dashboard:

When drilling down to a Dashboard, filters on the parent report will affect the Dashboard tiles differently.

Linking filters are filters created during the linking process. Interactive filters are filters created on a Dashboard, or from Report Viewer Options in the Report Designer.

Report Filters are filters created in the parent report using either the Report Wizard or the Filters menu of the Report Designer.

Tile Type Linking Filter Behavior Report Filter Behavior
Existing TreeAdvancedReport.pngAdvanced, TreeExpressReport.pngExpress or TreeAdvancedReport.pngCrossTab Report if the Filter Field is already on the report in the tile, or if it can be directly joined to the other Data Objects on the report, the filter is applied to the tile. if the Filter Field is already on the report in the tile, the filter is applied to the tile. If not, the filter is not applied.
Existing TreeExpressView.pngExpressView if the Filter Field is already on the report in the tile, or if it can be directly or indirectly joined to the other Data Objects on the report, the filter is applied to the tile.
Visualization if the Filter Field is already in the visualization in the tile, or if it can be directly or indirectly joined to the other Data Objects in the visualization, the filter is applied to the tile.

In the Dashboard Viewer’s Filters Pane, all filters that are a result of the linking process except for non-prompting filters from the parent report are visible.
These filters are:

  1. Filters from the Fields tab of the Linked Report Wizard
  2. Filters that are a result of the formula in the Formula Tab of the Linked Report Wizard
  3. If the parent report is on a Dashboard, interactive filters from parent and parent-of-parent (aka grandparent) reports
  4. Prompting filters from parent report

Adding Linked Reports

  1. Create a new Dashboard, Advanced, CrossTab or Express Report that contains the drilldown data. This will become the linked child report.Linked reports typically open in a small window, so the child report should be simple and concise. Avoid large fonts, a lot of static content, or making it too large in size. The child report‘s General Option for No Data Qualify Display Mode should be set to Show Report in order to show an empty drilldown instead of an error message.
  2. In the parent report, select the cell to link then click the Link Reports LinkedReport.png icon in the toolbar. This will open the Linked Report Wizard.

    twgyamGLV3.png

    The Linked Report Wizard in v2021.1+.

  3. Select or search for the desired child report. This will use default linking to drilldown to the child report.

    To manually define link fields:

    Z0ZjuS1uSh.png

    The Fields tab of the Linked Report Wizard

    1. Select the From Category and To Category from their respective dropdowns.
    2. Click the + Add button for each set of linked fields to add. Use multiple linked fields to show only the drilldown rows that satisfy all of the link conditions.
    3. For each set of linked fields, select the From Field and To Field.

    To conditionally link with formula:

    firefox_oNSGU0vs56.png

    The Formula tab of the Linked Report Wizard

    1. Add a data field by dragging and dropping it into the Formula pane or double-clicking it. Or enter it manually using the following format: {DataCategory.DataField}
      Caution: Linked report conditional formulas support only one data field. If multiple data fields are used, all but the first will be ignored.
    2. Add a Parameter by entering it manually using the following format: @[email protected].
    3. Add a function by dragging and dropping it into the Formula box or double-clicking it, or enter it manually.
  4. Click Okay to close the Linked Report Wizard.

Caution

Because the child is a separate report from the parent, if the child report is moved to another folder, or the linked field is removed from the report, the link will be broken.

Modifying Linked Reports

  1. Click the Link LinkedReportNotice.png icon in the corner of the linking cell, or click the cell and then click the Link Reports LinkedReport.png icon in the toolbar.
  2. Interact with the Linked Report Wizard just as if the link is being added (continue at step 2).

Deleting Linked Reports

twgyamGLV3.png

  1. Click the Link LinkedReportNotice.png icon in the corner of the linking cell, or click the cell and then click the Link Reports LinkedReport.png icon in the toolbar.
  2. Click the name of the of the report at the bottom of the dialog. A Remove Link X icon will also appear.
  3. Click Okay.

Or, right-click the cell with the linked report in it, then click Remove Linked Value.

Display Page Numbers

  1. Add a Page Footer or Page Header section, depending on where you’d prefer the page number to be located.
  2. Select a cell and manually add this formula: [email protected]@
    btSC71ReZc.png

For more information on formulas, refer to the article on formulas. For more information on parameters, review parameters.

Tip

To include the word “Page” with the page number, in step 2 above use the formula =Concatenate("Page ",@[email protected]) instead.

dC2r5CNLoS.png

Dashboard Viewer (v2019.2+)

 

When a Dashboard is run, it is displayed in a new tab called the Dashboard Viewer. Reports, Visualizations and other Dashboard content appear in rectangular Tiles on the Canvas. Reports, Visualizations and Filter tiles are interactive, as are any embedded web pages. The tiles can be set to refresh periodically, or can be refreshed manually. Filters placed on the canvas or in the Filters Pane can filter the displayed data. Reports containing Parameters can have them adjusted in the Parameters pane. Basic Dashboard viewing is also possible on mobile devices, although the best experience will be with Dashboards specifically formatted for small mobile screens.

A Dashboard with an orange background color and several charts, KPIs and text tiles

Running a Dashboard in the Dashboard Viewer

Run a Dashboard

  • From the Dashboard Designer, click the run_button.png Run button on the top toolbar. Depending on system configuration, this will also save the Dashboard.
  • From the MainLeftPaneViewReports.png Report Tree, select the Dashboard in the tree, then click the Run > icon, or click the Menu screen.report_tree_menu.png icon and click RunReportSmall.png Run Report.

The Dashboard Viewer opens in a new tab, indicated by the Viewer RunReportSmall.png

icon. If a Dashboard refreshes automatically but is not currently the selected tab, the Dashboard’s name will flash. If the Dashboard is edited in the Designer it will need to be run again to see the changes in the Viewer, which will launch in another new tab.
Ub6xddPtrv.png

Two Dashboard Viewer tabs, “Orange Dash” is the selected tab

If any of the reports on the Dashboard contain filters or parameters which have their Prompt for value setting enabled, a prompt will appear before the Dashboard loads.

Keyboard Shortcuts

There are several useful keyboard shortcuts available in the Dashboard Viewer. They are listed in the Keyboard Shortcuts article.

Interacting with Dashboards

There are a number of ways to interact with tiles on the canvas. The available options depend on how the Dashboard was designed and the type of content on it.

Every Dashboard Viewer will have a floating Refresh DashboardRefresh.png

icon in the top-left corner of the canvas. Clicking on this icon at any time will refresh the data in the tiles.

If the Dashboard also includes interactive filters, a floating Filter FilterMenu.png

icon will appear below the Refresh icon. Clicking on the Filter FilterMenu.pngicon or pressing the F key on the keyboard will open the Filters Pane on the right side of the screen where filters can be viewed. Filters narrow down the data presented in a tile. More information is included in the Filters section below. Clicking the icon or pressing F again will hide the pane.

If any of the reports on the canvas include system or report level Parameters, a floating Parameters ParametersMenu.png

icon will appear along with the Refresh icon. Clicking on the icon or pressing the P key on the keyboard will open the Parameters Pane on the right side of the screen where these parameters can be changed. Clicking the icon or pressing P again will hide the pane.

The Refresh icon, Filters icon and Parameters icon stacked on top of each other in the Dashboard Viewer

This Dashboard has both Interactive Filters and Parameters on it

The floating icons may be relocated anywhere along the left edge of the canvas by clicking and dragging any of the icons along the edge. The icons disappear if the mouse is not moved over the canvas for a few seconds, and will reappear on the next mouse movement.

Reports and Visualizations

Report tiles are reports already created in the application and then loaded into a tile on the canvas. A Visualization tile is a graphical representation of data that can be designed directly on the canvas without first creating a report. Both report and visualization tiles can display tabular or graphical data.

Hover the mouse over a tile to show a navigation bar at the bottom of the tile. Depending on the particular tile’s content and its Advanced Properties, some options may not be available:

  • Page through the report by using the navigation icons PageHome.png PageUp.png PageDown.png PageEnd.png. The Page Up PageUp.png and Page Down PageDown.png icons move one page at a time, and the Page Home PageHome.png and Page End PageEnd.png icons will move to the first and last page of the report, respectively.
  • Enter text into the Find field, then click the up MoveGridRowUp.png or down MoveGridRowDown.png icons to search for text in the report
  • Click the Show Chart TileModeVizSelected.pngand  Show Table TileModeTabularSelected.png icons to swap between chart or tabular view

Click the Tile Menu tilemenu.PNG

icon to access some additional options for interacting with tiles:
  • Expand Tile will cause the tile to fill the entire canvas
  • Collapse Tile will return the tile to its original size
  • Refresh Report will refresh the data in the tile
  • Save as Advanced Report will save the tile as an Advanced Report. The corresponding Report Designer will be launched.
  • Export will export the tile’s content in one of the available export file formats. Depending on the system configuration and the report’s settings, choose from Excel, RTF, PDF, or CSV.

Filters

Use Filters to narrow down the data for multiple reports at once.

Interactive Filter tiles can appear as scales, menus, or checkboxes on the Dashboard. Hover the mouse over the filter tile to see which tiles on the canvas are affected by this filter. Affected tiles will be highlighted with a blue outline.

Select one or more data values, or a range of data, to apply the filter to all its affected tiles. This will automatically refresh the reports.

WX1l888skO.png

A vertical scale Interactive Filter tile which selects a range of shipping dates

Clicking on the floating Filter FilterMenu.png

icon will open the Filters Pane on the right side of the screen where filters can be viewed and modified. Filters in the pane are called Docked Filters. An example is provided below.
firefox_4gikiuwY8n.png

Dashboard Viewer with the Filters pane open on right side of screen

lpI1ESaoQU.png

The sample Filters Pane on the left is for a Dashboard with three docked filters.

Hovering the mouse over the filter item in the pane will highlight the affected tiles with a blue dashed outline.

  1. The first filter is an interactive filter on the data object Suppliers.Country. The operator Equal To means that only data where the Suppliers.Country is equal to the value USA will be included. The Country value can be modified by using the dropdown to change it. Clicking on the Settings SettingsMenu.png icon changes how the operator compares the value with the filter field (choose from Starts With or Contains).
  2. The second two filters on Customers.CompanyName and Orders.OrderID are linked from a parent report which has linked (or drilled-down) to this Dashboard. This linking behavior is indicated by the Linked Report LinkedReport.png icon. Both the linking filter and any other filters on the parent report will be imported to the Dashboard. Linked filters cannot be changed in the Dashboard Viewer. Hover over the Linked Report LinkedReport.png icon to see the folder and name of the parent report.

For more information about how Filters interact with reports, review the article on Filters.

Parameters

Parameters are system-wide or report-level variables that can be included in reports. There are several built-in parameters, and the system administrator can configure additional ones. Consult with them to find out what parameters are available. Individual reports can have their own parameters. The article on Report Level Parameters explains how to setup and use parameters in more detail.

ip9HyRELlh.png

The sample Parameters Pane to the left is for a Dashboard with reports that contain two parameters, the first named MyParameter and the second named DateParam whose values are Report Master and 11/27/2019 respectively.

Both parameters can be modified by editing their respective values using the controls available in each parameter item.

Dashboard Designer (v2019.2+)

 

Dashboards are a way to combine several related reports into one unified viewing space. Existing reports can be added to a Dashboard, and new Visualizations can be created directly on the Dashboard itself. Images, text, other web sites, and interactive filters can also be added. Dashboards can be exported as a Chained Report from the Dashboard Designer.

zE5TZc1KYG.png

The Dashboard Designer

The Dashboard Designer is comprised of three sections: the Toolbar, the Canvas and the Tile Properties Pane.

Each element on a Dashboard is a contained within a rectangular tile that can be resized and dragged to the desired location. Tiles are arranged onto a grid, and can snap into place next to each other.

Keyboard Shortcuts

There are several useful keyboard shortcuts available in the Dashboard Designer. They are listed in the Keyboard Shortcuts article.

Toolbar

The top of the Dashboard Designer contains a Toolbar for creating and interacting with the canvas and the tiles.

pf9iye8Bpi.png

The Dashboard Designer toolbar v2020.1+

  • + New Tile: creates a new content tile on the canvas
  • Refresh.png Refresh: refreshes the data in all tiles on the canvas from the data sources. The Refresh Reminder IvL5QjQgs2.png icon indicates that one or more report or visualization tiles on the canvas may not have the most up to date information
  • Undo.png Undo: undo the previous actions. Supports up to the last 100 actions, starting from the last action taken.
  • Redo.png Redo: redo the previous actions. Supports up to the last 100 undone actions.
  • FilterMenu.png AccordionItemClosedArrow.png  Filters: allows filters to be added to the Dashboard and shows prompting filters imported from the Dashboard’s component reports. Full details on how this menu works can be found in the Dashboard Designer: Filters article
  • ParametersMenu.png AccordionItemClosedArrow.png Parameters: if report tiles on the Dashboard contain Parameters, this menu will be enabled and allow the parameters to be changed. More information can be found in the Dashboard Designer: Parameters article
  • DashboardFormatMenu.png AccordionItemClosedArrow.png Canvas Format: controls how the tiles fit onto the canvas, PDF snapshot exports are formatted and sets default styling options
  • Save.png Save: saves the Dashboard
  • Save.png AccordionItemClosedArrow.png Save Dropdown: changes the name and description text of the Dashboard when saving
  • Export.png AccordionItemClosedArrow.png Export: exports the contents of existing reports and visualizations on the Dashboard as a Chained Report or a PDF Snapshot.
  • run_button.png Run: launches the Dashboard Viewer and optionally saves the Dashboard (depending on system configuration)

Canvas

Every element on a Dashboard is a contained on the canvas within a rectangular tile that can be dragged to the desired location, resized and styled. Tiles are arranged onto a grid, and can snap into place next to each other.

n7oQVLlxFX.png

The Dashboard Designer Canvas

Tiles

Each element on a Dashboard is a contained within a rectangular tile that can be resized and dragged to the desired location. Tiles are arranged onto a grid, and can snap into place next to each other.

Tiles contain four elements:

  1. Move handle — click and drag the move handle to move the tile around on the canvas. Hold the Shift key while dragging the move handle to stretch the tile to fit the available space
  2. Refresh Icon/Reminder and Tile Menu — contains additional options for tiles. Refer to the Managing Tiles section of this article for more information.
  3. Tile Header — an optional header with title
  4. Content — the content of the tile is displayed in this area
yXP8ibIMqz.png

Anatomy of a tile in the Dashboard Designer

Adding Tiles

Several different types of tiles can be added to the canvas:

  • Visualizations
  • URL
  • Image
  • Text
  • Existing Reports
  • Filters

New tiles can be added to the canvas either one of two ways:

  • Click the + New Tile icon to open the new tile menu, then drag the desired type of tile onto the Dashboard canvas.
    firefox_o54w1MDFDl.png
  • Drag the + New Tile icon onto the Dashboard canvas, and a new tile placeholder will be added onto the canvas.
  • Then choose the desired tile type by clicking on it in the placeholder.
  • W4phju0ggR.png

Tiles can be dragged to an empty location to fill the space, to the side of an empty location to take up a portion of the space, or over another tile to place it adjacent and resize the other tile to fit. Tiles can then be resized by dragging the handles to alter the tile size.

RBNlYXJiiF.gif

Dragging a new tile over an existing tile on the left

Screen Fit and Scaling

Dashboards can scale to fit different screen sizes. Click the Canvas Format DashboardFormatMenu.png AccordionItemClosedArrow.png icon on the Toolbar to open the Canvas Format menu.

In v2021.2, the following Size options are available:

W5Hrvg6VFV.png

To set the size of the Dashboard canvas, choose a common US or ISO page size from the dropdown, or choose Custom to enter a specific Height and Width.

Choose either Portrait or Landscape to orient the selected page size on the canvas. These dimensions and orientation are also used when exporting the Dashboard as a PDF Snapshot.

The Scale in Dashboard Viewer checkbox sets how the Dashboard will fit the tiles to the canvas.

5oWAO8digL.png

Caution

Changing the Scale in Dashboard Viewer mode or choosing a different Stretch Canvas option will automatically rearrange the position and size of the tiles on the canvas.

  • When checked (default), the tiles resize to fit the height and width of the canvas in the Dashboard Designer and Dashboard Viewer. The canvas size is limited only by the window or screen on which it appears. When checked, the Stretch Canvas options appear:
    • ScaleHeightAndWidth.png Stretch Canvas to Fit Height and Width — the canvas stretches to fill the window both horizontally and vertically. This mode is similar to the Scale to Screen option in v2019.2–v2021.1. The values in the Height and Width inputs apply to the size of an export as a PDF Snapshot.
    • ScaleWidthOnly.png Stretch Canvas to Fit Width — the canvas stretches horizontally to fit the window, but the width of the canvas is fixed. This mode is similar to the Specify Height option in v2019.2–v2021.1. The value in the Width input applies to the size of an export as a PDF Snapshot and the size of the canvas.
      • Check the Automatically Reposition Tiles checkbox to make the tiles reposition each time the width of the canvas is changed. Leave unchecked if the tiles should maintain position when the canvas width is changed. See the examples below, which shows the same Dashboard with a set height and differing widths with the Automatically Reposition Tiles checkbox checked and unchecked:
        Automatically Reposition Tiles Checked
        QV7B27yiNZ.gif 0udapHSPvw.gif
        Automatically Reposition Tiles Unchecked
        DZ9Pd43K97.png D5mwaJIO25.png
  • When unchecked, the canvas will be limited to the Height and Width for both the Dashboard Viewer and in PDF Snapshot exports, and the Stretch Canvas options are not available. This mode is similar to the Specify Height and Width option in v2019.2–v2021.1
    • Check the Snap tiles to grid checkbox if tiles should snap to the grid. Leave unchecked to allow free movement of the tile borders

In v2019.2–2021.2, the following Fit options are available:

  • Scale to Screen causes tiles to resize to fit the height and width of the displayed canvas.
    Tiles must be larger than 3-grid units tall and/or 4-grid units wide or less to automatically resize.
  • Specify Height specifies a static height for the canvas. Enter the desired Height of the Dashboard into the textbox. Tiles must be larger than 20 pixels tall or 4-grid units wide to automatically resize.
    • Check the Automatically Reposition Tiles checkbox to make the tiles reposition each time the width of the canvas is changed. Leave unchecked if the tiles should maintain position when the canvas width is changed. See the examples below, which shows the same Dashboard with a set height and differing widths with the Automatically Reposition Tiles checkbox checked and unchecked:

      Automatically Reposition Tiles Checked

      QV7B27yiNZ.gif

      0udapHSPvw.gif
      Automatically Reposition Tiles Unchecked
      DZ9Pd43K97.png D5mwaJIO25.png
  • Specify Height and Width prevents tiles from automatically resizing, and the canvas will have a static height and width. Enter the desired Height and Width into the corresponding textboxes.
    • Check the Snap Tiles to Grid checkbox if tiles should snap to the grid. Leave unchecked to allow free movement of the tile borders.

Backgrounds and Borders

Default options for the canvas background color, tile and tile header background colors, and tile border colors and widths can also be customized from the Canvas Format DashboardFormatMenu.png AccordionItemClosedArrow.png menu under Style. These settings can be overridden for individual tiles through the respective tile’s Tile Properties Pane.

  • Canvas Color sets the background color of the entire canvas

The following Tile Defaults are applied whenever a new tile is added to the canvas.

  • Check the Background checkbox to set colors for the tile and the tile header
    • Tile sets the default tile background color
    • Heading sets the default tile header background color
  • Check the Shadow checkbox to enable a subtle shadow effect to be applied to the tiles
  • Check the Border checkbox to set defaults for the tile borders. By default, the settings are applied to all four of the tile borders. To set individual color, width and roundness settings to each border check the Customize Border checkbox.
    • Click the color selector icon to choose a border color
    • Enter a width in pixels for the border
    • Choose a round value to set the roundness of the corners

Managing Tiles

Tiles have a menu with some additional options.

Refresh Icon/Reminder v2021.1+

For existing report and visualization tiles, clicking the Refresh Refresh.png

icon will reload the contents of the tile from the data source.

Depending on system configuration, the Refresh ReminderIvL5QjQgs2.png

  appears when content in the tile is not the most current information. This can happen when:
  • first opening the Dashboard Designer
  • adding an existing report tile to the Dashboard
  • changing the content of an existing report tile to a different report
  • changing the data fields or field formulas of the groups or values of a visualization tile
  • changing the aggregate type in a visualization tile
  • changing a visualization type to or from Tabular
  • adding, removing, or changing the filter field, formula, operator, or value of an interactive filter
  • changing the Input Type of an interactive filter on the Canvas
  • changing the value of a parameter on the Parameters menu

The Refresh Reminder feature is enabled by default, but can be disabled by the system administrator.

Tile Menu

Click a tile on the canvas to select it, then click the Tile Menu TileMenu.png

icon to access some additional options. Not all tile types have the same options available. For example, interactive filter tiles do not have expand tile or refresh report options.
  • Delete Tile will remove the tile from canvas.
  • Duplicate Tile will create a duplicate of the tile on the canvas.
  • Dock Filter to Toolbar will relocate an interactive filter from the canvas to the Filters menu. When the Dashboard is run, the filter appears in a Filters pane instead of on the canvas. Applies to interactive filter tiles only.
  • Expand Tile will fill the entire canvas with this tile. Once expanded, this option becomes Collapse Tile and will restore the tile back to its original size and location
  • Refresh Report will refresh the data in report and visualization tiles
  • Open in Designer will load an existing report tile into its respective designer for editing
  • Save as Advanced Report will save tiles containing visualizations built directly on the canvas as an Advanced Report and then launch the Advanced Report Designer
  • Edit will allow settings to be changed for visualization tiles. Different visualization types will have different options available:
    • Type: changes the visualization type displayed in the tile. Click on the different categories (pie, line, column, bar, tabular) to choose one of the available types. See the Dashboard Designer: Visualizations article for more information. Enable or disable a three-dimensional effect on the visualization with the Use 3D Style checkbox.
    • Theme: changes a visualization’s visual color theme
    • Legend Location: changes the location of a visualization’s legend location from none, right or bottom. Applies only to those bar, column, pie, line and scatter visualizations
    • Sort By: change how the visualization is sorted
      • Report Order presents the data in the order in which the data source sends it to the application
      • Data Labels sorts the data based on the labels in the visualization
      • Ascending sorting order is from lowest to highest or from A to Z
      • Descending sorting order is from highest to lowest or from Z to A
    • Invert Data: for multiple category visualizations (e.g. stack column and stack bar charts), swaps the order of the categories

Tile Properties Pane

pane.png

The Tile Properties Pane in the Dashboard Designer

The Tile Properties Pane on the right side of the Dashboard Designer is where the look, feel and behavior of individual tiles on the canvas can be changed. It contains three tabs: Content, Style and Advanced.

The very top of the Tile Properties Pane contains the Tile Header section, including a text entry field for providing a title that can optionally displayed on the canvas. Clicking on the Show Header DashboardRightPaneTitleOff.png

icon next to the text entry field will show the header in the tile on the canvas. Clicking Hide Header DashboardRightPaneTitleOn.png  icon will hide it. Clicking on the Title Header Format AccordionItemDragHandle.png icon will show formatting settings for the tile header allowing the font type, size, alignment and styling to be applied. Clicking the Title Header Format AccordionItemDragHandle.png icon again will hide these settings.
firefox_bxjw63NQ2m.png

Tile Header portion of the Tile Properties Pane, with formatting settings shown

Depending on the type of tile selected on the canvas, the availability of the tabs in the Tile Properties Pane will change. Tabs which are not available for a particular tile type will be grayed out. Each tile type has its own article with details of the respective tile properties. A list of tile types with links to more information is at the beginning of this article.

Dashboard Designer: Existing Report Tiles (v2019.2+)

Existing ExpressViews, Advanced Reports, or CrossTab Reports can be added to a Dashboard. Existing filters and parameters can be accessed and modified from the Dashboard Designer. Reports on Dashboards have most of the same interactivity as in the Report Viewer, with the exception of the interactive sorts/filters dock.

More information about creating reports can be found in the sections on Reporting.

To add an existing report to a Dashboard, review the Dashboard Designer article. Tiles can be added from the NewTileButton.png

New Tile menu, or by dragging the report directly to the canvas from the MainLeftPaneViewReports.png Report Tree.
F0GZnxsosm.png
By default when the Refresh Reminder feature is enabled, a placeholder image is displayed in the tile until it is manually refreshed by clicking the Refresh icon

If the report has prompting filters or parameters on it, these items can be modified in the corresponding Filters FilterMenu.png

and Parameters ParametersMenu.png menus in the top toolbar. Review the Dashboard Designer: Filters and Dashboard Designer: Parameters articles for additional information.

Tile Properties Pane

Controls for building and interacting with the Existing Report tile are contained in the Tile Properties Pane on the right side of the screen. Click on the tile to select it and the Tile Properties Pane will fill with the properties for the selected tile.

Content

The Content tab for existing reports allows the report in the tile to be changed. Select the report from the list, and then click Apply. Only reports of the same type as the existing tile can be selected. For example, a tile which shows an ExpressView can only be changed to another ExpressView.

Note

Adding an existing report tile or changing the name of the report contained in the tile will require a Refresh of the tile’s contents if the Refresh Reminder feature is enabled.

Style

ExpressView

The Style tab for ExpressViews contains the Tile and Fit sections. This is how this tile appears on the canvas is changed. The settings here override the Canvas Format defaults.

  • v2021.1.6+ Setting a Minimum Column Width prevents columns of the ExpressView from shrinking below a set number of pixels wide. A column that starts off less than this value (in the report design itself, for example) won’t expand to this value. Instead, originally narrow columns will use their own starting width as the minimum column width. If all of the columns are wider than the space available in the tile, a horizontal scrollbar appears. The default value is 100.
  • Check Background to set a background color for the tile. Click Color to open the color selector and choose a background color. Unchecking the Background checkbox makes the tile transparent.
  • Check Tile Header to set a background color for the tile’s header. Click Color to open the color selector and choose a background color. Unchecking the Tile Header checkbox makes the header background transparent.

    Note

    The Tile Header options are only shown if the Tile Header is visible on the canvas.

  • Check Shadow to show a slight shadow effect around the tile.
  • Check Border to apply a border to the tile.
    • Check Customize Border to set the properties of each of the four tile borders individually. Leave unchecked to have the border properties applied equally to the four sides.
    • Click Color to open the color selector and choose a border color.
    • Width sets the border width in pixels.
    • Round sets the roundness of the corners.

Other Report Types

The Style tab is broken down into two areas for other kinds of reports: Fit and Tile.

The Fit section determines how contents of the report are presented in the tile.

Note

Changing this setting will require a Refresh of the tile’s contents.

  • Responsive Report Height will change the height of rows based on the size of the tile so that when the tile is expanded, the rows will fill the available space. 
  • Keep Original Report Cell Heights will not change the row height when the tile size is changed.
  • v2021.1.6+ Setting a Minimum Column Width prevents columns of the report from shrinking below a set number of pixels wide. A column that starts off less than this value (in the report design itself, for example) won’t expand to this value. Instead, originally narrow columns will use their own starting width as the minimum column width. If all of the columns are wider than the space available in the tile, a horizontal scrollbar appears. The default value is 100.

The Tile section is where tile appearance can be changed. The settings here override the Canvas Format defaults.

  • Check Tile Header to set a background color for the tile’s header. Click Color to open the color selector and choose a background color. Unchecking the Tile Header checkbox makes the header background transparent.

    Note

    The Tile Header options are only shown if the Tile Header is visible on the canvas.

  • Check Shadow to show a slight shadow effect around the tile.
  • Check Border to apply a border to the tile.
    • Check Customize Border to set the properties of each of the four tile borders individually. Leave unchecked to have the border properties applied equally.
    • Click Color to open the color selector and choose a border color.
    • Width sets the width in pixels of the border.
    • Round sets the roundness of the border corners.

Advanced

The Advanced Tab for Existing Reports is further broken down into two areas: Refresh and Navigation.

Refresh contains:

  • Viewer — check the box to enable automatic refreshing of the data in the Dashboard Viewer. Check the box and then set the number of seconds in between report refreshes. Uncheck the box to disable automatic report refreshing.

Navigation contains additional options for controls which will be displayed in the tile when the report is run.

  • Allow searching: check the checkbox to add a search box at the bottom of the tile that can search the report for data.
  • Allow scrolling: will only be shown if the tile contains an Advanced Report. Check the checkbox to add scrollbars to the tile if the report contents extend beyond the bounds of the tile.
  • Table/chart toggle button: will only be shown if the tile contains an ExpressView. Check the checkbox to include toggle buttons that allow switching between the visualization display mode and the tabular display mode. When unchecked, the toggle buttons are hidden.

Dashboard Designer: Visualization Tiles (v2019.2+)

 

A visualization is a graphical representation of data that can be designed directly on the Dashboard canvas without first creating a report. The figures below are a small sampling of the visualizations that can be built directly on the Dashboard.

Tabular visualization

Tabular visualization

Pie chart visualization

Pie chart visualization

Spline chart visualization

Spline chart visualization

zDdSkiR8JU.png

Bar chart visualization

To add a new Visualization Tile to a Dashboard, review the Dashboard Designer article. Add tiles with the NewTileButton.png

New Tile menu.

Creating Visualizations

  1. Add a new visualization tile to the canvas.
  2. Select the Chart Type from the Content tab of the Tile Properties Pane on the right side of the screen. When a new visualization tile is added to the canvas, Bar will be selected by default. The documentation section on Visualizations includes detailed information about the different chart types and how to build them. Dashboards also support an additional Tabular visualization type.
  3. Next, add data to the visualization by dragging-and-dropping a Data Object from the MainLeftPaneDataFields.png Data Field Pane on the left side of the screen to the tile. Once at least one Data Object is on the tile, the Data section of the Tile Properties Pane‘s Content tab will also allow Data Object selection.Drag the Data Objects either to the Values section on the left side of the tile, or to the Groups section on the right side of the tile. Groups represent the labels of the chart, whereas the Values represent the quantities that will be charted. For example, to create a bar chart that shows total Revenue for each Employee, the Data Object OrderDetails.Revenue would be added as a Value and Employee.LastName would be added as a Group.
      CD8OkvKd6u.png or FaAvVkKYrS.png
    Some visualization types (Tabular, Bar, Column and Line) allow multiple Groups to be added. When a chart has multiple Groups, it can categorize the displayed Values. Additional groups can be added by dragging the Data Object to the tile, or clicking on the Add.png Add button in the Content tab. For example, to see the total Revenue for each Employee by Category, Category.CategoryName could be added as a second group.

    The figure below shows a single group bar chart on the left and a multi-group bar chart on the right. Every color change in each bar in the chart on the right represents a different category’s contribution to that employee’s total revenue.

    zDdSkiR8JU.png

    76RxxZgqo5.png

    Multiple Groups can be re-ordered which changes how the values are categorized. Drag the Groups in the Content tab and move them up or down to reorder them. Using the same example above, but changing the order of the Groups, the chart changes to show each Employee’s contribution to the Total Revenue for each Category:

    Z55lS43ITK.png

    Some visualization types (Tabular, Bar, Column, Line, KPI) allow multiple Values to be added to the chart. This adds another quantity to the display. For example, a bar chart showing the number of units in stock and the number of units on order side-by-side can be made by having both Products.UnitsInStock and Products.UnitsOnOrder as Values. Additional values can be added by dragging the Data Object to the tile, or clicking on the Add.png

    Add button in the Content tab of the Tile Properties Pane.

    Multiple Values can be re-ordered which changes how the values are ordered. Drag the Values in the Content tab and move them up or down to reorder them.

    vcoXN5tVsG.png

    Tip

    When adding multiple values to a KPI visualization, choose values which have the same number formatting as only one format can be chosen for the whole visualization tile. For example, include only currency or date values in the same tile.

  4. Then, in the Data section of the Content tab of the Tile Properties Pane, further customization of the input data can be applied. Click on either the Group or Value to open the popover.
    table-values.png table-groups.png pie-chart-values.png
    From left to right: the Values popover from a tabular visualization, the Groups popover from a tabular visualization and the Values popover from a pie chart
    • Formulas can be applied to both the Groups and the Values, including aggregate functions (for Values only) by clicking the Formula Editor FormulaLarge.png icon.
    • Values can be given a friendly name in the Display Name field. This name is displayed prominently in KPI visualizations, chart legends and tabular visualization column labels. Groups in Tabular Visualizations may also be given a Display Name.
    • An Aggregate can be chosen from the dropdown (Sum, Average, Count, Distinct Count, Min, Max or None) which will aggregate the Values. For example, to get the total Revenue for each Employee, choose Sum. Functions not included in the list can be added with the Formula Editor.
    • Tabular Visualizations have two additional properties that can be changed:
      • Groups and Values can be sorted in either ascending or descending order by checking the Sort checkbox. When checked, the Direction dropdown appear allowing selection of sorting in Ascending or Descending order.
      • Checking the Hide Detail checkbox below the list of Values hides the individual rows from the table and shows only the aggregated category summary.
  5. Formatting such as color themes, chart titles, X- and Y-axis labels, legends and number formatting can be customized in the Style tab of the Tile Properties Pane.
  6. Advanced features such as automatic data reloading, sorting, changing the axes values, and applying Filters can be customized in the Advanced tab of the Tile Properties Pane.

Note

Modifying the groups, values, aggregates or changing between tabular and other chart types, or changing the Hide Detail property of a tabular visualization will require a Refresh of the tile’s contents.

Tile Properties Pane

Controls for building and interacting with the Visualization tile are contained in the Tile Properties Pane on the right side of the Dashboard Designer.

Content

The Content tab for Visualizations is further broken down into two areas: Chart Type and Inputs.

Chart Type sets the type of visualization displayed. The documentation on Visualizations includes detailed information about the different chart types and how to build them. Dashboards also have the Tabular type which is unique to the Dashboard Designer. Tabular Visualizations display data in a categorized table format.

Choose from the different categories:

  • ChartTypeTabular.pngTabular
  • ChartTypeColumn.pngBar and Column Type
    • ChartTypeBar.pngBar
    • ChartTypeStackBar.pngStack Bar
    • ChartTypeStackBar100.pngStack Bar 100
    • ChartTypePareto.pngPareto
    • ChartTypeColumn.pngColumn
    • ChartTypeStackColumn.pngStack Column
    • ChartTypeStackColumn100.pngStack Column 100
  • ChartTypePie.pngPie and Other Types
    • ChartTypePie.png Pie
    • ChartTypeDonut.pngDonut
    • ChartTypePyramid.pngPyramid
    • ChartTypeFunnel.pngFunnel
  • ChartTypeLine.pngLine
      • ChartTypeLine.pngLine
      • ChartTypeSpline.pngSpline
      • ChartTypeArea.pngLine Area
      • ChartTypeSplineArea.pngSpline Area

      • ChartTypeStackedArea.pngStacked Area
      • ChartTypeZoomLine.pngZoom Line

    • ChartTypeRadar.pngRadar
  • ChartTypeScatter.pngScatter
    • ChartTypeScatter.pngScatter
    • ChartTypeZoomScatter.pngZoom Scatter
  • ChartTypeKPI.pngKey Performance Indicator (KPI)

The Data section is where the Groups and Values for the visualization are configured. To add Groups or Values, click the corresponding Add.png

Add button, or drag-and-drop a Data Object from the MainLeftPaneDataFields.png Data Field Pane on the left side of the screen to the tile.
VQwHvrRfeY.png
Data section of the Content tab for a newly created bar visualization tile

Groups represent the categorization of data on the report. Values represent the quantities of each of those categories. For example, a column chart showing the total revenue per employee could use Employees.LastName as the Groups and a formula which calculates the sum of OrderDetails.Revenue for the Values.

Formulas may be entered for either the Groups or Values by clicking on the corresponding Group or Value and then on the Formula EditorFormulaLarge.png

icon. The Formula Editor article contains more information about how to use Formulas.

Groups and Values may be re-ordered by clicking on the reordering handle SearchOptionsActive.png

icon and dragging-and-dropping them. Re-ordering Groups changes how the values are categorized. Reordering Values changes the order multiple values appear in the visualization.
CCrVUlgZXj.gif
Re-ordering Groups in the Content tab

For a Tabular Report, checking the Hide Detail checkbox will remove the tabular data from the report and show only the aggregate summary. For example, the tile on the left below shows the detail rows, and they are hidden in the tile on the right.

pJ4FemOJVt.png

JelwIXH123.png 

Style

The Style tab for Visualizations is further broken down into additional areas depending on the type of visualization in the tile. They are: Color, Labels, Number Format, Tabular Text, Fit and Tile.

The Color section applies to all visualization types and is where the general appearance of the visualization is set.

firefox_hvdg33O9Gm.png
Color section of the Style tab
  • A theme can be chosen from the list,
  • A linear range of colors can be specified (available for all types except Tabular visualizations), or
  • A custom arrangement of colors may be chosen.
  • Checking the 3D checkbox will apply a three-dimensional effect to the visualization.

The Tabular Text section applies only to Tabular visualizations and is where the font type and color are set.

The Fit section applies only to Tabular visualizations.

  • v2021.1.6+ Setting a Minimum Column Width prevents columns of the table from shrinking below a set number of pixels wide. If all of the columns are wider than the space available in the tile, a horizontal scrollbar appears. The default value is 100.

The Labels section applies to all of the chart types except Tabular. Labels on the visualization such as a title, axis labels, data points and a legend are configured here. These label choices will vary depending on the type of visualization.

ZGOb2ADM83.png
Labels section
  • Title: when checked, will add a title to the visualization and allow formatting of the font, size color and position of it
  • Subtitle: when checked, will add a subtitle under the main title and allow formatting of the font, color and alignment of it
  • X and Y-Axis: when checked, will add labels to the horizontal (X) and vertical (Y) axes and allow formatting of the font, color and position of them. Only available for column, bar, spline, line (except Radar) and scatter visualizations. For visualization types other than bar and tabular, an additional dropdown box will appear to set the orientation of the data labels. This tells the application what to do if there is not enough space in the tile to display the whole label. Choose from:
    • Auto: allow the application to select the best orientation for you based on available space in the tile
    • g68qOn5XeZ.pngSlant: rotate the labels 45-degrees along the axis
    • sKYCRS3Dta.png Wrap: texts wraps to a new line
    • niDP7gwXFf.png Stagger: values are staggered along two lines so they don’t overlap
    • 7YBRqc1t7H.png Rotate: rotate the labels 90-degrees along the axis
    • Sm9YGoPcF6.png None: do not apply any change to labels, they may overlap
  • Points: when checked, will add data points to the visual elements. Not available for Tabular or KPI visualizations. Different types will have different choices available:
    Choice Visualization Category Description
    None All Does not display data points on the chart.
    Series Values Bar, Line, Pie  Displays the value of the Values
    Percent of Series Values Pie Displays the percentage of the whole represented by this value.
    Data Labels Pie Displays the names of the Groups represented each segment of the chart.
    Data Labels with Data Values Pie Combines the behavior of both Data Labels and Series Values modes to place both pieces of information in the label.
  • Legend: when checked, will add a legend to the visualization located on the tile according to the choice made in the dropdown box, either Right or Bottom.

The Number Format section sets the way that numbers are displayed for Bar and Column, KPI and Line charts. It works very similar to the other number formatting options throughout the application.

LiSDC1CJNB.png
Number Format section
  • Decimal: when checked, will force a specified number of decimal places to be displayed. The symbol inserted between the whole and fractional part of the number can be specified, as well as the number places after the symbol.
  • 1000 Separator: when checked, will separate thousands places with the specified symbol
  • Currency: when checked, will display the specified currency symbol in front of the value
  • Percentage: when checked, will display a percent sign (%) after the value
  • KPI Value Format applies only to KPI visualizations to set how the value is presented in the tile. Choose from:
    • English Short Scale
      firefox_pmhx16svE9.png
    • Scientific Notation
      firefox_fentOe92oR.png
    • Expanded
      firefox_X3Yeus3xPg.png

The Tile section is where tile appearance can be changed. The settings here override the Canvas Format defaults.

  • Check Background to set a background color for the tile. Click Color to open the color selector and choose a background color. Unchecking the Background checkbox makes the tile transparent.
  • Check Tile Header to set a background color for the tile’s header. Click Color to open the color selector and choose a background color. Unchecking the Tile Header checkbox makes the header background transparent.

    Note

    The Tile Header options are only shown if the Tile Header is visible on the canvas.

  • Check Shadow to show a slight shadow effect around the tile.
  • Check Border to apply a border to the tile.
    • Check Customize Border to set the properties of each of the four tile borders individually. Leave unchecked to have the border properties applied equally to the four sides.
    • Click Color to open the color selector and choose a border color.
    • Width sets the border width in pixels.
    • Round sets the roundness of the corners.

Advanced

The Advanced Tab for Visualizations is further broken down into two areas: Refresh and Navigation (Tabular only) or Data Display (Other Chart Types).

Refresh contains one checkbox, to enable automatic refreshing of the data in the Dashboard Viewer. Check the box and then set the number of seconds in between report refreshes. Uncheck the box to disable automatic report refreshing.

Navigation applies only to Tabular charts and contains one additional control Allow searching that will add a search box at the bottom of the tile.

The Data Display section applies to the other chart types and has additional controls for how the chart is formatted:

  • Use the Sort By dropdown to apply a secondary sort to the chart that will affect the order Values are added to the visualization. Choose from Ascending or Descending order by selecting from the dropdown.
    • None adds the Values in the order they are returned from the data source.
    • Data Labels sorts the data based on the Groups in the visualization
    • Data Values sorts the data on the Values in the visualization
  • Check the Limit Values checkbox to set a Min and Max value for the axes labels. If the Values in the chart exceed these settings, the settings are ignored.
    U3ayDYafJj.png
    Bar visualization with no Limit Values set
    ZOxWuvaUpo.png
    The same bar visualization with Min set to 200 and Max set to 210,000. Note the change in bar size and the labels along the X-axis.
  • Check the Exclude Values checkbox to exclude Values Less Than or Greater Than these settings from appearing in the chart.
  • Click the Advanced Filters button to open the Visualization Advanced Filters Wizard. Similar to the Report Designer’s Filter Wizard, this wizard allows Filters to be applied to this visualization tile. Advanced Filters created here do not show up in the Dashboard Designer‘s Filters menu, nor do they appear in the Dashboard Viewer‘s Filters pane. Advanced Filters created here are applied before the Dashboard Designer or Dashboard Viewer is launched and can be used to limit the amount of data returned from the data source, which can be useful when working with very large amounts of data to improve Dashboard performance.

Dashboard Designer: Image Tiles (v2019.2+)

An image file can be added to the Dashboard in an Image tile. Most image files supported by a modern web browser (e.g. JPG, PNG, GIF, SVG, ICO, BMP, WEBP, etc…) can be displayed in an Image tile.

To add an Image tile to a Dashboard, review the Dashboard Designer article. Tiles can be added from the NewTileButton.png

New Tile menu.

Controls for interacting with the Image tile are contained in the Tile Properties Pane on the right side of the screen. Click on the tile to select it and the Tile Properties Pane will fill with the properties for the selected tile.

Once the tile is created on the canvas, an image file can be:

  • dragged-and-dropped onto the Image tile
    hmhwbN5Adw.gif
  • the browse your files link in the tile can be clicked to open a standard file browser

When a Dashboard is exported as a PDF Snapshot (v2021.2+), image tiles are included in the output

Tile Properties Pane

Content

The Content tab for Image tiles allows the image file to be changed. Either drag-and-drop the image file to the pane, or click the browse your files link to open a standard file browser to choose an image.

The Attached Image field displays the file name of the image contained within the tile.

ukoll4GkMv.png

Style

The Style tab for Image tiles is further broken down into two areas: Fit and Tile.

Fit sets how the image fits inside the tile. There are three options to select from.

  • Fit will change the dimensions of the image so that the entire image can be seen in the tile, maintaining the image’s aspect ratio. This is the default Tile Fit mode for new Image tiles.
    H5ndiFdXAe.png
  • Stretch will stretch the image to completely fill the tile dimensions, ignoring the aspect ratio of the image file
    TjuBSlBvAJ.png
  • Keep original size will not change the dimensions of the image at all. The image appears with its original dimensions.
    r1iAkEvZH2.png

The Tile section is where tile appearance can be changed. The settings here override the Canvas Format defaults.

  • Check Background to set a background color for the tile. Click Color to open the color selector and choose a background color. Unchecking the Background checkbox makes the tile transparent.
  • Check Tile Header to set a background color for the tile’s header. Click Color to open the color selector and choose a background color. Unchecking the Tile Header checkbox makes the header background transparent.

    Note

    The Tile Header options are only shown if the Tile Header is visible on the canvas.

  • Check Shadow to show a slight shadow effect around the tile.
  • Check Border to apply a border to the tile.
    • Check Customize Border to set the properties of each of the four tile borders individually. Leave unchecked to have the border properties applied equally to the four sides.
    • Click Color to open the color selector and choose a border color.
    • Width sets the border width in pixels.
    • Round sets the roundness of the corners.

Advanced

The Advanced tab is not available for Image tiles.

Dashboard Designer: Text Tiles (v2019.2+)

A textbox can be added to the Dashboard as a Text tile. Text tiles can be used for displaying static text, such as a header or section label. Creative use of the tile border properties can yield tile groups.

APMN32dBii.png
A Dashboard with four Text tiles, two of which are used as headers for groups of visualizations

To add a Text tile to a Dashboard, review the Dashboard Designer article. Tiles can be added from the NewTileButton.png

New Tile menu.

Controls for building and interacting with a Text tile are contained in the Tile Properties Pane on the right side of the screen. Click on the tile to select it and the Tile Properties Pane will fill with the properties for the selected tile.

Once added to the canvas, text is entered directly into the Text tile by clicking on it and typing into it.

Sales Dashboard text tile
Entering text directly into the Text tile

When a Dashboard is exported as a PDF Snapshot (v2021.2+), text tiles are included in the output.

Tile Properties Pane

Content

The Content tab is not available for Text Tiles.

Style

The Style tab for Text tiles is further broken down into Tile Fit, Text Attributes and Background and Border sections.

Fit contains two choices to change how the text fits the tile.

  • Scale will cause the font size to change to fit the available height of the tile
  • Keep Original will use the font size specified in the Text section. Scrollbars will appear if necessary.

Text contains the standard text formatting controls to change font type, size, alignment, styling and color of the text contained in the Text tile. Checking the Wrap Text checkbox will cause text to wrap to a new line if it is longer than the available width. If unchecked, the text will appear on one line.

The Tile section is where tile appearance can be changed. The settings here override the Canvas Format defaults.

  • Check Background to set a background color for the tile. Click Color to open the color selector and choose a background color. Unchecking the Background checkbox makes the tile transparent.
  • Check Tile Header to set a background color for the tile’s header. Click Color to open the color selector and choose a background color. Unchecking the Tile Header checkbox makes the header background transparent.

    Note

    The Tile Header options are only shown if the Tile Header is visible on the canvas.

  • Check Shadow to show a slight shadow effect around the tile.
  • Check Border to apply a border to the tile.
    • Check Customize Border to set the properties of each of the four tile borders individually. Leave unchecked to have the border properties applied equally to the four sides.
    • Click Color to open the color selector and choose a border color.
    • Width sets the border width in pixels.
    • Round sets the roundness of the corners.

Advanced

The Advanced Tab is not available for Text tiles.

Dashboard Designer: URL Tiles (v2019.2+)

Web pages can be added to the Dashboard and interacted with in a URL tile.

Note

Some web site authors may choose to block their sites from being embedded into a URL tile. Therefore, not all web pages can be displayed on the canvas.

To add a URL tile to a Dashboard, review the Dashboard Designer article. Tiles can be added from the NewTileButton.png

New Tile menu.

Controls for building and interacting with the URL tile are contained in the Tile Properties Pane on the right side of the screen. Click on the URL tile to select it and the Tile Properties Pane will fill with the properties for the selected tile.

When a Dashboard is exported as a PDF Snapshot (v2021.2+), URL tiles are included in the output.

Tile Properties Pane

Content

The Content tab for URL tiles allows the URL in the tile to be changed. Enter the fully qualified web address (e.g. “http://www.mycompany.com”) and then click Apply to update the tile.

Parameters can be used in the web address for a URL tile.

Hx0t4srU1i.png
Content tab of the Tile Properties Pane

Style

The Style tab for URL tiles contains the Tile section. The Background and Border section is where tile appearance can be changed. The settings here override the Canvas Format defaults.

  • Check Background to set a background color for the tile. Click Color to open the color selector and choose a background color. Unchecking the Background checkbox makes the tile transparent.
  • Check Tile Header to set a background color for the tile’s header. Click Color to open the color selector and choose a background color. Unchecking the Tile Header checkbox makes the header background transparent.

    Note

    The Tile Header options are only shown if the Tile Header is visible on the canvas.

  • Check Shadow to show a slight shadow effect around the tile.
  • Check Border to apply a border to the tile.
    • Check Customize Border to set the properties of each of the four tile borders individually. Leave unchecked to have the border properties applied equally to the four sides.
    • Click Color to open the color selector and choose a border color.
    • Width sets the border width in pixels.
    • Round sets the roundness of the corners.

Advanced

The Advanced Tab is not available for URL tiles.

Dashboard Designer: Filters (v2019.2+)

 

The Filters menu in the toolbar is where filters are created, modified or removed, and imported prompting report filters can be modified.

Click on the Filters FilterMenu.pngAccordionItemClosedArrow.png icon in the toolbar to open the Filters menu. The menu is broken into two sections: Interactive and Imported.

Suggested Reading

A detailed description of how to create filters and how to use them can be found in our Report Designer Filters article.

Interactive Filters

Interactive filters are added in the Dashboard Designer and can be applied to one or more tiles on the canvas. Interactive filters can be displayed on the canvas in tiles where they can be interacted with directly, or are docked in the Filters Pane of the Dashboard Viewer.

LgI1HGcPXJ.png

An interactive filter displayed as a tile on the canvas

rmSS8BCgXV.png

The same interactive filter docked to the Filters Pane instead of appearing on the canvas

Filters with the Equal To, Is One Of or Is Between operator can appear on the canvas in a tile, and have a grab handle firefox_CvFQ2WT8ap.png which can be dragged to the canvas to create a tile from the Filters menu. Conversely, filter tiles on the canvas can be dragged into the menu to dock them, or click Dock Filter to Toolbar in the tile’s Tile Menu.

Vwh6PGkXHk.png

Interactive Filter that is not contained in a canvas tile as it appears in the Filters menu, showing filter field (CategoryName), operator (Is One Of), value (Beverages, Condiments, Confections) and grab handle.

Filters on the canvas only have a basic outline in the menu and don’t show their filter field, operator or value.

Interactive Filter

Interactive Filter that is contained in a canvas tile as it appears in the Filters menu, showing basic outline

All interactive filters can be docked in the Filters pane. Only filters with the Equal To, Is One Of or Is Between operator can appear on the canvas in a tile.

Filter Dependency

If the Filter Dependency feature is enabled by the system administrator, the filter values available to be selected are determined by the values of other filters on the Dashboard. For example, setting a Category filter would then only show Products in that Category in a separate Products filter.

Dashboard interactive filters are dependent on each other based on the order in which they are added and the reports that they affect.

9TLeEMQ0P3.gif

Here the top filter on Category was added before the one on Product Name below it. Choosing Produce from the top filter changes the bottom tile to only display products in the Produce category. Notice the report is filtered both times the filter values are selected.

iSzs3GWHUh.png

On this Dashboard, the top Category filter is not applied to the large Orders CrossTab tile, so selecting a Category does not filter the Product Names list, since that would remove potential filter values for the CrossTab. However, note that selecting a product from the list that is not a Grain/Cereal will cause the Dashboard Filters report tile to show a No Data Qualified message.

Add an Interactive Filter

To add a filter to the Dashboard, on the FilterMenu.png

AccordionItemClosedArrow.png Filters menu, click on the + Add Filter button. A New Filter item will appear in the menu. Click on the new filter item to modify it.

firefox_LVecTvL43b.png

New Filter Item as it appears in the Filters menu

Modify an Interactive Filter

Note

Adding, removing, or modifying the field, formula, operator, or value of an interactive filter or changing the Input Type of an interactive filter on the canvas will require a Refresh of any tiles affected by that filter.

Docked Filters (Not In a Canvas Tile)

An Interactive Filter not contained in a tile is called a Docked Filter. To modify a docked filter, click on the corresponding filter item in the menu and the Filter Item Detail options will appear.

Filter Item Details dialog of the Dashboard Filters menu

Click the corresponding tile names in the Affected Tiles section to apply the filter to the desired tiles. Only those reports containing the Filter Field or a direct relationship to it can be selected even though all of the reports on the Dashboard are available in the list.

Np3UlDNA81.png

Additional Reports\Pareto Chart does not have a direct data relationship with the Filter Field and is therefore not available

The Interactive Filter can be given a title by clicking on and entering it into the text field at the top of the menu.

p5K3iQEMP5.gif

Changing title of a docked Interactive Filter from Categories.CategoryName to Category Name

The Filter Field, Operator and Value fields determine what Data Field to filter on, what comparison to make and what value to compare.

Consider an example where only orders whose Order ID number is larger than 1000 should be included in the tile. The Field is set to Orders.OrderID, the Operator is set to Greater Than or Equal To and the Value is set to 1000.

On the Canvas

Interactive Filters that appear in tiles are modified by clicking on the filter tile and then interacting with the Tile Properties Pane on the right side of the screen.

Content

Filter Field sets the Data Field to filter on. The dropdown list will be populated with fields from the Categories included on the Dashboard as well as those with a direct relationship to those fields. Clicking on the Formula Editor FormulaLarge.png

icon opens the Formula Editor so that a formula can be applied to the Filter Field.

Suggested Reading

The Formulas Section contains an extensive explanation of how to use formulas and what functions are available.

Check the corresponding tile names in the Affected Tiles section to apply the filter to the desired tiles. Only those reports containing the Filter Field or a direct relationship to it can be selected.

Np3UlDNA81.png

Additional Reports\Pareto Chart does not have a direct data relationship with the Filter Field and is therefore not available

The Sort dropdown determines in which order the filter values appear in the tile, either in Ascending or Descending order. For example, if the Filter Field is Employees.LastName, setting this to Ascending will order the last names from A to Z, Descending will order them from Z to A.

Note

The Sort dropdown does not affect the sorting of the data on the reports this filter affects. It only affects the order the filter values are listed in the tile.

An interactive filter in a tile contains a control to interactively change the filter values. Choose the Input Type. The four available control choices are:

  • 1.png Dropdown: allows one value to be selected at a time
  • A series of five checkboxes with the second, third and fifth checked Checkboxes: allows zero or more discrete values to be selected simultaneously
  • 3.png Single Slider: allows one value along a range of values to be selected
  • 4.png Range Slider: allows all values inside of a range of values to be selected

Orientation changes the orientation of the filter tile’s control. Choose from Horizontal or Vertical.

Side-by-side comparison of a "Shipped Date" interactive range slider filter in the horizontal and vertical orientation

Horizontal and Vertical orientation, respectively, of the same Range Slider control

The Default Value will be used to filter the data when the Dashboard is first run, before the user has interacted with the tile. When the Dashboard is exported as a Chained Report, the Default Value is applied to the tiles.

Style

The Style tab for Filter tiles is further broken down into three areas: Text, Selector Format and Tile.

Text contains typical controls for changing the font type, size, color, styling and alignment for the filter control’s values.

Selector Format section contains controls to set the color, horizontal and vertical alignment of the filter’s control. The Select Format Type dropdown specifies what type of data the filter controls. It works similar to the Number tab of the Cell Formatting window in the Report Designer.

The Tile section is where tile appearance can be changed. The settings here override the Canvas Format defaults.

  • Check Background to set a background color for the tile. Click Color to open the color selector and choose a background color. Unchecking the Background checkbox makes the tile transparent.
  • Check Tile Header to set a background color for the tile’s header. Click Color to open the color selector and choose a background color. Unchecking the Tile Header checkbox makes the header background transparent.

    Note

    The Tile Header options are only shown if the Tile Header is visible on the canvas.

  • Check Shadow to show a slight shadow effect around the tile.
  • Check Border to apply a border to the tile.
    • Check Customize Border to set the properties of each of the four tile borders individually. Leave unchecked to have the border properties applied equally to the four sides.
    • Click Color to open the color selector and choose a border color.
    • Width sets the border width in pixels.
    • Round sets the roundness of the corners.
Advanced

The Advanced tab is not available for Filter tiles.

Delete an Interactive Filter

Docked Filters (Not In a Canvas Tile)

To delete an Interactive Filter from the Dashboard:

  1. Click on the Filters FilterMenu.pngAccordionItemClosedArrow.png icon in the toolbar to open the Filters menu.
  2. Click on the desired filter item in the menu.
  3. Click the Delete button at the bottom of the Filter Item Detail.

On the Canvas

Click the Interactive Filter tile on the canvas, then click Delete Tile from the Tile Menu.

Exports

Interactive filter tiles will not appear in the resulting Chained Report when a Dashboard is exported. Though the tiles themselves will not display, the default values set for the filters will apply to their affected tiles in the exported file.

In PDF Snapshot exports (v2021.2+), filter tiles show a summary of the field, operator and values in place of their controls.

Snapshot of a simple Dashboard showing the values Dairy Products, Confections, Condiments and Beverages selected for the Categories.CategoryName filter tile

Refer to the Exporting Dashboards article for more information.

Imported Filters

When an existing report is added to the Dashboard and it contains prompting filters, those filters are imported into the Dashboard.

When more than one report is added with a prompting filter on the same Data Field, the filters will be automatically combined into a single consolidated imported filter.

Add an Imported Filter

A report added to the Dashboard that contains prompting filters will import those filters automatically.

Modify an Imported Filter

To modify an Imported Filter click on the corresponding filter item in the FilterMenu.png

AccordionItemClosedArrow.png Filters menu. The Filter Item Detail will appear.
rkfSfTgf6F.png

Filter Item Detail

The Imported Filter can be given a title by clicking on and typing it into the text field at the top of the menu.

p5K3iQEMP5.gif

Changing title of an Imported Filter from Categories.CategoryName to Category Name

The Operator and Value fields determine what comparison to make and what value to compare.

Note

To edit the filter field of an Imported Filter, edit the corresponding report in the Report Designer.

The Affected Tiles section lists the tiles which are affected by this filter. If more than one report is filtered by the same Filter Field, it is grouped together into a Consolidated Filter. This consolidation happens automatically. There can only be one consolidation for a single data field on a Dashboard.

lq6bbcQFPI.png

Filter Details of a Consolidated Filter

When imported filters are consolidated, changing the Operator or Value will change it for all of the Affected Tiles simultaneously. To break the consolidation so that tiles may have their operators and values set individually, click the corresponding Ungroup button.

The On Run options work as follows for both consolidated and unconsolidated filters:

  • Prompt for Value when checked will prompt the user to specify a filter value when the Dashboard Viewer is launched
  • Show on Output when checked will show the filter in the Dashboard Viewer‘s Filter Pane. If unchecked, the filter will be hidden from the Filter Pane but will still affect the reports.

Delete an Imported Filter

To remove an Imported Filter from a Dashboard, it must be set to not prompt for a value or be removed from the report where it was imported from.

Dashboard Designer: Parameters (v2019.2+)

 

When a report containing one or more parameters is added to a Dashboard existing report tile, those parameters are imported to the parameters Parameters menu. Click on the toolbar Parameters parametersAccordionItemClosedArrow.png

icon to open the Parameters popover menu.

Each imported parameter is shown as an item in the menu. For example, the parametersParameters menu below contains two parameters, one named MyParameter with a value Teleportation, and one named EmployeeID with the value Johnson.

firefox_ER1HO01lbn.png

Parameters menu with two parameters imported from reports on the canvas

If more than one report references the same parameter, it is grouped together into a Consolidated Parameter. This consolidation happens automatically. Clicking on any of the parameter items in the menu will open the Parameter Item Detail menu.

eRyOdRL9mN.png

Parameter Item Detail for a single report

bnTskA7PWX.png

Parameter Item Detail for a consolidated parameter

The Parameter can be given a title by clicking on and entering it into the text field at the top of the menu. This title is used in the Parameters Pane of the Dashboard Viewer to more clearly identify it.

firefox_4RTHyf5b0n.png

Providing a title for a Parameter in the Dashboard Designer

firefox_wvaru9SWhP.png

How the title in the Dashboard Viewer Parameters Pane appears

The name of the report or reports that imported this parameter are displayed under the title.

The parameter’s Name and Value are displayed, and the Value can be changed.

The corresponding tile names in the Affected Tiles section show which tiles are affected by the parameter. If two or more reports on the canvas have a parameter with the same name, those parameters are consolidated into a consolidated parameter. Click the Group All button to consolidate all of the reports with the common parameter

In the example below, the EmployeeID parameter appears on two reports, param-test1 and param-test2. In the Parameter Item Detail on the left, a Group All button allows consolidating all of the reports with the EmployeeID parameter. The resulting consolidated parameter is on the right.

Consolidated Parameters allow the Value to be changed for all of the reports simultaneously.

To break the consolidation, click the corresponding ungroup button.

MbR9qbWCNs.png

becomes EN6fawFy40.png

The On Execute options work as follows:

  • Prompt for value when checked will prompt the user to specify a value when the Dashboard is run. Otherwise the value in the menu is used when the Dashboard is run.
  • Show on Output when checked will show the parameter in the Dashboard Viewer‘s Parameters Pane. If unchecked, the filter will be hidden from the Parameters Pane but will still affect the reports.
  • Set Default Value when checked, will apply the Value specified in the Dashboard Designer to the parameter when the Dashboard is run. If unchecked, the parameter will use it’s own default value, if any, when the parameter is run.

Note

Changing the value of a parameter will require a Refresh of any tiles affected by that parameter.

Adding/Deleting Parameters

To add a parameter to a Dashboard, it must be included in one of the Dashboard’s component reports.

To remove a parameter from a Dashboard, remove it from the reports on the Dashboard.

Exporting Dashboards (v2019.2+)

Dashboards can be exported, scheduled and e-mailed as:

  • Chained Reports to any of the available export types (Excel, PDF, RTF, CSV). Each tile appears on a separate page in the output file.
  • Snapshots with a likeness of the Dashboard as it appears on screen in a single page PDF

In the examples below, consider this sample Dashboard:

n8fhDuwAz0.png

Sample Dashboard in the Dashboard Viewer

Chained Report Output Mode

Dashboards exported in this mode consist only of report and visualization tiles. Filter tiles are excluded from the Chained Report output but the default filter values apply to their affected tiles.

For a Dashboard exported as a Microsoft Excel Workbook, each tile appears as a separate worksheet tab in the output. For CSV exports, each report tile’s output will be in the output file, one right after the next. Visualization tiles will be blank lines.

Note

The default values of the filters are reflected in the exported Dashboard even if the filter tiles have been adjusted before exporting.

When exported in Chained Report mode, the sample Dashboard looks like this:

vHHkfH1mVm.png

Each report or visualization tile appears in its own page of this PDF Chained Report output

Snapshot Output Mode v2021.2+

Dashboards exported in this mode resemble a screenshot of the entire canvas, with a few exceptions:

  • scrollbars, the Tile Menu icon, Refresh icon, Move handle, report page buttons and search bar on each tile do not appear in the output
  • the floating Refresh, Filter and Parameters icons of the Dashboard Viewer do not appear in the output
  • ExpressView Existing Report tiles appear in their exported view style—not as they do in the ExpressView Designer or on the Dashboard canvas
  • Interactive Filter tiles appear with a summary of the tile’s filter settings

When exported as a Dashboard Snapshot, the sample Dashboard looks like this:

The sample Dashboard exported as a Dashboard Snapshot

How to Export a Dashboard

Dashboards may be exported from the MainLeftPaneViewReports.png

Report Tree and the TabDashboardSelected.png Dashboard Designer.

Note

If at least one report tile on the Dashboard has no export types selected, exporting of the Dashboard will be disabled.

From the Report Tree

From the MainLeftPaneViewReports.png

Report Tree by right-click the Dashboard name or by first select the report in the tree, then click the Menu hamburgermenu.png  icon, hover over ExportSmall.png Export As and then choose the preferred export type from the list.

firefox_Vy3kcgUn9h.png

From the Dashboard Designer

Export from the Dashboard Designer by clicking the Export Export.png

icon in the toolbar then choosing an export file type.

5h0alafxCt.png

If some export types shown here are not available, they may be restricted by the system administrator, or one or more of the component reports may restrict them in their respective General Report Options.

Scheduling or E-Mailing Dashboards

Follow the instructions in the Scheduling Reports to schedule or immediately e-mail a Dashboard.

Charts and the Chart Wizard


Charts are a way of illustrating data in order to make it easy to spot trends and patterns. Most types of charts are simply a collection of points on a grid, with interstitial designs and labels that make them easier to read.

Pie chart visualization

Pie chart

Spline chart visualization

Spline chart

Bar chart visualization

Bar chart

By default, charts are generated dynamically, based on data points that come from Data Objects. Each data field can be thought of as a “series” of data, which have a common association and are connected in some way. When we put one data field on a chart, we have a single-series chart, which is useful for comparing values to each other. When we put multiple data fields on a chart, we have a multi-series chart, which is useful for comparing trends.

Before creating a chart, make sure that your data exists in cells on the report. These cells don’t have to be visible, so you can suppress them if desired. Charts are interactive in the Report Viewer, but will appear as static images in PDF, RTF, and Excel formats (CSV is incompatible with charts).

To insert a chart into an Advanced Report:

  1. Select a Group Footer or Report Footer cell
  2. Open the Chart Wizard:
    • (v2021.1+) Click the Insert  Insert.png DropDownArrow2.png icon on the toolbar, then click Type.png Chart

The Chart Wizard has four tabs: Type, Data, Appearance, and Size and Preview. You can navigate between the tabs by clicking on the tab name or using the Previous and Next buttons.

Although the information in the Chart Types section below applies to all reports, the Chart Wizard is only available in the Advanced Report Designer. The ExpressView Designer and Dashboard Designer have their own chart building wizards. Review the ExpressView: Visualizations and Dashboard: Visualizations articles for more information.

Chart Types

The Type Tab lays out all the available types of charts you can create. There are 24 types, sorted into five general categories.

  • Line
    • ChartTypeLine.png Line
    • ChartTypeSpline.png Spline
    • ChartTypeArea.png Area
    • ChartTypeSplineArea.png Spline Area
    • ChartTypeStackedArea.png Stacked Area (v2021.1+)
    • ChartTypeSparkLine.png Spark Line
    • ChartTypeZoomLine.png Zoom Line
    • ChartTypeSPC.png Statistical Process Control
    • ChartTypeRadar.png Radar (v2021.1+)
  • Bar and Column
    • ChartTypeBar.png Bar
    • ChartTypeStackBar.png Stack Bar
    • ChartTypeStackBar100.png Stack Bar 100
    • ChartTypeColumn.pngColumn
    • ChartTypeStackColumn.png Stack Column
    • ChartTypeStackColumn100.png Stack Column 100
    • ChartTypePareto.png Pareto
    • ChartTypeSparkColumn.png Spark Column
  • Pie and Other Single-Series
    • ChartTypePie.png Pie
    • ChartTypeDonut.pngDoughnut
    • ChartTypePyramid.pngPyramid
    • ChartTypeFunnel.pngFunnel
  • Scatter and Bubble
    • ChartTypeScatter.png Scatter
    • ChartTypeBubble.png Bubble
    • ChartTypeZoomScatter.png Zoom Scatter
    • ChartTypeCombination.pngCombination
  • ChartTypeHeatmap.png Heatmap (v2020.1.3+)
  • ChartTypeTabular.png Tabular (available to Dashboards only)

Line

Line charts display series of data points on a grid, connected by straight lines. They are often used to display a trend over time.

Each series on a line chart is represented as a colored line. Line charts can have up to three Y-axes.

Variations:

  • Spline chart — data points are connected by interpolated curves instead of straight lines.
  • Area chart — area under each line is filled in by a color. Overlapping areas have mixed colors.
  • Spline-Area chart — combination of a spline chart and an area chart.

  • Stacked Area chart — similar to an area chart, but may display multiple series additively.
  • Spark Line chart — has no grid or axes. Use point labels and benchmark lines for reference.
  • Statistical Process Control chart — always have a central line for the average, an upper line for the upper control limit and a lower line for the lower control limit. Data points outside of the limits are indicative of an out-of-control process.

  • Radar chart — also known as a spider chart, multiple series (typically three or more) may be compared along the same radial grid/axes

Learn more and see some examples in the Line Charts and Spark Charts articles.

Statistical Process Control

A Statistical Process Control (SPC) Chart is a graph used to study how a process changes (usually over time). Data is plotted in time order. SPC charts always have a central line for the average, an upper line for the upper control limit and a lower line for the lower control limit. Control limits are located 3 standard deviations above and below the centerline (mean). Data points outside of the limits are indicative of an out-of-control process.

SPC is a single series Line chart with the following attributes:

  • Data Label — as with any other single series line chart, users must specify the column/formula to be used as the Data Label source for the chart. This value will display along the x-axis.
  • Data Value — as with any other single series line chart, users must specify the column/formula to be used as the Data Value source for the chart. This value will display along the y-axis, and will be used to calculate the Control, Upper Control Limit, and Lower Control Limit.
Default Benchmarks

When SPC is the selected chart type, the following benchmarks will be added by default:

  • Mean — a benchmark with the value “Mean” will be added to represent the Control. By default, this benchmark will have the label “Mean”, will be colored Green, and will have a Solid line style.
  • UCL — a benchmark with the value “Standard Deviation +3” will be added to represent the Upper Control Limit. By default, this benchmark will have the label “UCL”, will be colored Red, and will have a Dashed line style.
  • LCL — a benchmark with the value “Standard Deviation -3” will be added to represent the Lower Control Limit. By default, this benchmark will have the label “LCL”, will be colored Red, and will have a Dashed line style.

Benchmark definitions can be altered as desired.

Bar and Column

Bar charts use rectangular bars which extend horizontally left to right to show comparisons between categories. Column charts use vertical bars which extend upward. The length of a bar represents the quantity of the data value.

Each series on a bar or column chart is represented by a colored set of bars.

Variations:

  • Stacked bar/column chart – Series are stacked on top of each other, additively.
  • 100% Stacked bar/column chart – Series are converted to a % of the max, then stacked on top of each other, additively to 100%.
  • Spark column chart – Has no grid or axes. Use point labels and benchmark lines for reference.
  • Pareto chart – Combines a descending column chart, where each column is the next highest data value, and an overlapping line chart, where each point is the cumulative sum to that point. Often used to highlight the most important field in a series. Single-series only.

Learn more and see some examples in the Bar Charts and Spark Charts articles.

Pie and Other Single-Series

Pie charts are used to show the relationship of data values in a series as portions of the total. The area of each slice is proportional to the quantity.

Each data value on a pie chart is represented by a colored “slice”. Pie charts are single-series only.

Variations:

  • Doughnut chart – Pie charts with a hole in the center.
  • Pyramid chart – Used to show data hierarchy in addition to value. Data values are represented by vertically stacked slices, the height (not width) proportional to the quantity. The vertical order of the slices is determined by the sort order.
  • Funnel chart – Inverted pyramid chart. Often used to show retention amount, or stages in a process. Shape is inverted, not data order. To change the order, swap the sort direction.

Learn more and see some examples in the Pie, Doughnut, Pyramid, and Funnel Charts article.

Scatter and Bubble

Scatter charts use pairs of data fields with a common relation to generate coordinates as points on a grid. They are often used to find relationships between two variables in a set of data. Unlike most other report types, scatter charts often map data from detail rows, instead of group rows.

Each series on a scatter chart is represented by a different shape and color combination.

Variations:

  • Bubble chart – The points become circular “bubbles”, with a third coordinate field as the radius of the bubble.

Learn more and see some examples in the Scatter and Bubble Charts article.

Zoom Charts

Zoom charts provide the ability to view data at various levels of granularity, especially when the data set under observation is large and can be organized into layers for easier interpretation. The ability to zoom-in and zoom-out makes it easy to view data at various macroscopic and microscopic levels.

Variations:

  • Zoom Line chart – A variation of a standard Line chart with zooming as an added capability.
  • Zoom Scatter chart – A variation of a standard Scatter chart with zooming as an added capability.

Learn more and see some examples in the Line Chart and Scatter and Bubble Chart articles.

Combination Charts v2016.3+

Combination charts are several different charts layered on top of one another. They comprise of a combination of Column, Line, Area, and/or Stacked Column charts. (Stacked Column charts are not compatible with other chart types). Combination charts can have up to two Y-axes.

mdxjn4gDdV.png
Sample combination chart with a column chart and a line chart on the same axes

Heatmaps v2020.1.3+

A heatmap is a chart with a minimum of two related axes and as few as one or as many as six data series arranged on a grid. The defining characteristic of a heatmap is its use of color to indicate value in the cells. In addition to color, each cell may display up to five additional values (one in each corner of the cell and a fifth in the center). When hovering the mouse over a cell, a tooltip may optionally display information about the series.

3kuQFHjfi4.png
A sample heatmap

Heatmaps have a unique Chart Wizard experience, visit the Heatmap Charts article for details.


The following sections pertain to building Line, Bar, Column, Pie, Pareto, Spark, Scatter and Bubble charts. For information on how to build Gauges, GeoCharts and Google Maps and Heatmaps, visit their respective articles.

Data

The Data Tab is used to specify which cells to use as chart data. You can change how data is translated into points by changing the data layout. You can also choose a sort order, as well as upper and lower boundaries for the data and axes.

Data for Chart

LWqJFWmRlo.png

Add series to the chart by selecting a Data Field containing numeric values from the Series Values dropdown menu. Some charts may require you to select a data field to label the X-Axis. Some charts may ask for two or three data fields per series. The data axis is drawn automatically.

Note

Data is on the Y-Axis; this may not always be the vertical axis. Labels are on the X-Axis; this may not always be the horizontal axis. Scatter charts have no labels axis, but have X- and Y- data axes.

Add additional series by clicking

 Add Series (disabled for single-series charts). Give a Name to each series. Click the Delete Delete.png icon to remove a series.

Change the data layout by click  ApplyBtn.png

Data Layout…. This will open the Data Layout dialog. If you change the data layout, this section will change for you to add either individual points, or groups of series, instead of adding individual series. See Data Layout below for details.

Other Options

The Other Options setup how data is sorted and what data points are excluded (if any) and sets boundaries for the axes (if applicable).

laBwVNO6Qt.png

Use the Sort data by dropdown to determine how series data should be ordered:

  • Report Order — Use the sort order specified by the report.
  • Data Labels — Sort by the label axis value, alphabetically or numerically.
  • Data Values — Sort by the value of the data.

You can sort data in Ascending (A- Z, 0-9) or Descending (Z-A, 9-0) order.

Use the Exclude values fields to ignore values that are too large and/or too small.

(Grid charts) Use the Data Axis Minimum Value and Maximum Value fields to set upper and/or lower bounds for the data axis.

(Grid charts) Align Data Labels Across Series: Re-sorts the data in each series by the data labels. Enable this option if you have a chart where each series has the same data labels and the intent is to compare values per series and label. If you have series that don’t necessarily have the same labels, you can disable this option.

(Pie charts) Use the Other Category Percent field to group data fields with small quantities into an “Other” category.

Data Layout

Your data may not fit neatly into series. This dialog accommodates different data layouts by allowing you to select from a couple of different ways to build a chart.

Column Based Chart is the default. This layout builds charts by taking data fields, and mapping selected values as Y-coordinates on the data axis. Determine which values are selected by specifying a data field with a common relation as the X-axis. This layout is useful if you want to plot one or more unrelated series in a group (e.g. Budget and Sales and Expenditures per Store).

Use Column Based Chart if… Your report contains a group with one or more elements. For example:

a92bF8KSqo.png

Row Based Chart is a little more complex. This layout still uses fields as series, but all your series are a group, nested within another group which determines the X-axis values. Data values are mapped per series per group. This layout is useful if you want to plot two or more related series in a group (e.g. Sales per Employee per Store).

Use Row Based Chart if…  Your report contains a group within a group. For example:

PpHeaILRvk.png

If you select this layout, the data selector will change to allow you to add all your series as a group, nested within an outer group for the data labels:

pyCuUvbkCV.png

Cell Based Chart is the simplest option. This layout builds charts by taking pairs of static report values, and using them as (X,Y) or (label, value) coordinate pairs.

In order for the chart wizard to recognize report cells, they must be in Formula form, with a preceding = sign, text surrounded by quotes, and data fields surrounded by braces { }. Examples:

  • Number: =42
  • Text: =”February 24th”
  • Data field: ={Employees.EmployeeName}
  • Formula: =Month{Orders.OrderDate}
  • Math: ={Orders.UnitPrice} * 2.43

Use Cell Based Chart if… You want to build a chart point by point, and only have one data series. For example:

5bTs2u8eKA.png

If you select this layout, the data selector will change to allow you to add points. This layout only supports one series of data (duplicating data labels will create duplicate axis labels):

pa4WOCACKL.png

Appearance

The Appearance Tab contains options for customizing how the chart will look.

Colors

Use the Colors dropdown to select either:

  • a named color theme to apply to the chart
    B9ugOZpUDq.png
  • a custom gradient range of colors by selecting the Linear Range option.
    7CTnCKcp0e.png
  • a specific range of colors by selecting the Custom option.
    cCOsVKdJyW.png

Check Use 3D Style to give your chart a three-dimensional look.

firefox_0rZ9yJf5Et.png EXDC54rUhw.png
The same column chart with 3D Look turned on and turned off

Labels

4a3rEKw6uW.png

Chart Title – Enter the text you want to appear in at the top of the chart.

(Grid charts) X-Axis Title – Enter the text you want to appear on the X-Axis (horizontal axis).

(Grid charts) Y-Axis Title – Enter the text you want to appear on the Y-Axis (vertical axis).

Use the Point Labels dropdown to label the points on the chart:

  • Series Values
  • Percent of Series Values
  • Data Labels
  • Data Labels with Data Values

Use the Legend Position dropdown to choose where to display the legend relative to the chart, either:

  • None — do not show a legend
  • Bottom — show the legend along the bottom of the chart
  • Right — show the legend along the left of the chart

Use the Label Font dropdown to specify the font for the labels.

Use the FormatCells.png

Number Format… dialog to specify how data and axis labels should be formatted:
flCjFV4Tfw.png

Use the FormatCells.png

Conditional Colors… dialog to conditionally change chart element colors. Bars, columns, segments of pie charts, points in line and scatter charts, and bubbles in bubble charts can change color conditionally, depending on a formula. To add a conditional formula, click add_button.png Add. Choose a color by using the color picker, or enter a color value. Then click the Formula Formula.png icon to open the Formula Editor and set the condition.

There are additional parameters available when making chart conditional formulas that allow you to set the condition for coloring points based on the point data. The following parameters are available depending on the type of chart and data layout:

  • @[email protected] – the value of the point’s Data Label field, or Y Value field for scatter and bubble charts
  • @[email protected] – the value of the point’s Data Value field, or X Value field for scatter and bubble charts
  • @[email protected] – the value of the point’s Series Label field for charts using the Row Based layout
  • @[email protected] – the value of the point’s Bubble Size field for bubble charts
  • @[email protected] – the value of the point’s Bubble Label field for bubble charts

(Line & combo charts) Use the FormatCells.png

Chart Axes dialog to add and format axes:
3v6L04OhdF.png
  • Click  Add Y Axis to add an additional axis. Give it a title, and use the formatting options to format the axis labels and data labels for associated series. Click the Delete Delete.png icon to remove an axis.
  • Y-Axis Assignment – Use the dropdown menu for each series to associate the series with an axis. Each series will have the same format as the axis, and hiding an axis will hide associated series.
  • Click Okay when done.

Use the ChartBenchmarkLines.png

Benchmark Lines… dialog to add horizontal lines at specific sections of the chart:
HCBRuJa9O9.png

Benchmark lines dialog for a Statistical Process Control (SPC) chart

  • Click  New to add a benchmark line:
    • Line Type — select one of the available pre-defined lines
      • Static — a line that is set a fixed value
      • Minimum — a line at the data’s minimum point
      • Maximum — a line at the data’s maximum point
      • Mean — a line at the data’s mean
      • Median — a line at the data’s median
      • Standard Deviation (Population) — a line at the data’s population standard deviation
      • Standard Deviation (Sample) — a line at the data’s sample standard deviation
    • Label – Enter the text you want to label the line.
    • Value – Set the value for where the line will display.
    • Color –Specify the color of the line.
    • Line Style – Solid or Dashed.
  • Click the Delete Delete.png icon to remove a benchmark line.
  • Click Okay when done.

Other Features

sFLL8RNONE.png

This section allows you to customize a variety of attributes. The following attributes are supported:

  • Font color
  • Font size
  • Background opacity
  • Background color
  • Title alignment
  • Title font size
  • Title on top
  • Legend title
  • Title font size
  • Show border
  • Show tooltip
  • Subtitle
  • Subtitle font size

To add a feature, select an attribute from the dropdown menu and click

 Add Attribute. Then enter a custom property into the attribute field or select from the attribute dropdown menu.

Click the Delete Delete.png

icon to remove a feature.

Advanced Features

4knW1MMbGX.png

In addition to the Other Features, there are a number of Advanced Features that may be added to a chart. Contact your system administrator for assistance with this feature.

Size and Preview

The Size and Preview Tab allows you to change the size of the chart and preview any customizations.

Note

Chart previews in the Wizard and on the Design Grid use placeholder data.

ZLPE2HjxiL.png

Change the size of the chart in one of three ways:

  • Drag-and-drop the resizing handle in the bottom-right corner.
  • Check Fit to Cell and resize the chart cell on the Design Grid.
  • Check Set specific size and enter a custom Height and Width in pixels

Chart Data Layout Types

Charts illustrate data to us so that we can spot patterns and trends easily, but it’s important to remember that a chart is simply a collection of points on a grid. Each point has its label (typically along the x axis) and its value (typically along the y axis).

There are several ways to represent this collection of points on a report, and the application must be able to transform them into a chart regardless of the design you’ve chosen. For this reason, the Chart Wizard comes with three Data Layout Types. Understanding the way you’ve designed your report and data will help you select the right Layout Type, which will in turn tell the application how to transform your data into a chart.

Layout One: Cell-Based Chart

Layout One is for building a specific type of single-series chart using a collection of static points on your report. This layout type is cell-based because each point’s labels and values come from a specific cell in the report output.

How do I know this is the right Layout for me?

Take a look at your report design and determine whether the points you’re interested in charting are static or dynamic. In the application, a dynamic data point is one that comes from a field. Fields are denoted by a little triangle in the upper left-hand corner of the cell.

In the example above, any data points coming from this cell will be dynamic because the cell contains a dynamic field (see the triangle in the blue box). The Employees.FullName field is a placeholder for all the employee names that will appear on the report. These names will be added to the report dynamically after you’re done designing it and have clicked the “run” button.

Static data points, by contrast, are defined explicitly in the report design and do not contain dynamic fields.

In the above example, every cell contains a static value. The first, third, and fifth cells each contain a string formula that will return the text inside the quote marks. No matter what section these formulas are in, they will only ever return their respective strings of text. The second, fourth, and sixth cells contain calculation formulas returning a static value, in this case the minimum, average, and maximum number of days it takes to ship an order, respectively. When we chart this data, we’ll need to use Layout One in order to pinpoint each of these cells and define them as either data labels or data values. In this case, the string formulas will serve as the labels, and the calculations will be the values. Together, they make up three sets of coordinates on the chart.

How would that look in the Chart Wizard?

What would the final report design look like?

How would the output look?

Layout Two: Column-Based Chart

Both Layout Two and Layout Three are for creating single and multi-series charts, but there are some important differences in the report designs they work with. Layout Two is great if you want to show two or more unrelated values for a single label. Values may be considered “unrelated” if they come from separate fields or columns. This layout is column-based because each column will add a new series of data to the chart.

How do I know this is the right Layout for me?

First, make sure you’re working with dynamic data points. Second, make sure you’re interested in calculations for just one group. If you have two columns representing values you’d like to plot against a column representing your labels, you’re in the right place!

In the example above, each column becomes a new series charted against the label column. Since all the labels come from a single column, we know to use Data Layout 2. Another indication that Layout Two is correct to use in this case is that the series labels are static values rather than dynamic values that are part of the data fields. 

How would that look in the Chart Wizard?

The Chart Wizard makes it easy to see the how this Layout is all about adding values to a given label.

It helps a lot if your calculations are also in the same numeric range. For example, charting tree height (0 – 50 feet) on the same y axis as tree species population in a forest (0 – 50,000 trees) will make it hard to read smaller values. If your values aren’t in the same numeric range, you can add one or more y axes in different numeric ranges on the appearance tab. Note: this feature is only available as of v2016.3; see Charts for more information.

What would the final report design look like?

In this example, the label field is in cell A3, and the three value fields are in cells B3, C3, and D3, respectively.

How would the output look?

Layout Three: Row-Based Chart

Layout Three is also for building single and multi-series charts, but when used to create a multi-series chart, it requires a bit more prep on the design end because it compares two or more related values for a given label. Values can be considered “related” when they come from the selfsame column or field. This layout is row-based because all series are coming from the rows of one column of data.

In the above example, the series labels all come from the same column and are dynamic values coming from a data field. Each unique value coming from that field, in this case Year, will become a new series.

How do I know this is the right Layout for me?

First, make sure you’re working with dynamic data points. Second, make sure you have one group nested inside another. (See Understanding Sorting and Grouping for more information.) If you want to create a multi-series chart and you want to show a calculation per a group per another group, Layout Three is the setting you want. 

Still unsure? Here’s a simple verbal test to show whether you’re looking for Layout Two or Layout Three when you build your multi-series chart. Which group of statements sounds truest to your case? 

Group A

  • I want to show income per employee per year.
  • I want to show number of ad sales per sales rep per publication.
  • I want to show amount donated per donor per month.

Group B

  • I want to show the number of staff and students for each school.
  • I want to show the sales and expenditures and remaining budget for each store.
  • I want to show the average number of sales and the average number of calls for each sales rep.

If your case is more like Group A, you’re looking at Layout Three. If your case is more like Group B, you’ll want to go with Layout Two.

How would that look in the Chart Wizard?

What would the final report design look like?

In this example, I want the report to show revenue per category per year. I’ve made this possible by nesting a Year group inside a Category group. (CategoryName is the primary sort, and Year is the secondary sort.)

How would the output look?

Additional Resources

  • User Support Lab — Chart Data Layouts (video)

Bar Charts

Bar

Bar charts use rectangular bars that extend horizontally to show comparisons between categories. Each data value is represented by a bar, the length of which represents its quantity. Bar charts can be single-series (one bar per category) or multi-series (multiple bars per category, each series differentiated by color).

Sample bar chart

Stacked Bar

Stack bar charts are a variation of a multi-series Bar chart. Each bar is a category of data values stacked additively. The length of the bar represents the total quantity of the category, and each segment represents the data value in proportion to the total. Each series is differentiated by color. Stack bar charts can be created in the same manner as multi-series Bar charts.

Sample stacked bar chart

100% Stacked Bar

Stack bar 100% charts are a variation of a multi-series Bar chart. Each bar is a category of data values stacked additively. The length of the bar is fixed to 100%, and each segment represents the data value as a percentage of the total. Each series is differentiated by color. Stack bar 100% charts can be created in the same manner as multi-series Bar charts.

Sample 100% stacked bar chart

Column

Column charts are a stylistic variation of a Bar chart. They use rectangular columns which extend vertically to show comparisons between categories. Each data value is represented by a column, the height of which represents its quantity. Column charts can be single-series (one column per category), or multi-series (multiple columns per category, each series differentiated by color). Column charts are created in the same manner as Bar charts.

Sample column chart

Stacked Column

Stack column charts are a variation of a multi-series Column chart. Each column is a category of data values stacked additively. The length of the column represents the total quantity of the category, and each segment represents the data value in proportion to the total. Each series is differentiated by color. Stack column charts can be created in the same manner as multi-series Bar charts.

Sample stacked column chart

100% Stacked Column

Stack column 100% charts are a variation of a multi- series Column chart. Each column is a category of data values stacked additively. The length of the column is fixed to 100%, and each segment represents the data value as a percentage of the total. Each series is differentiated by color. Stack column 100% charts can be created in the same manner as multi-series Bar charts.

Sample 100% stacked column chart

Line Charts

All of the sample charts in this article have been generated using the same sample data set.

Line

Line Charts display a series of data points on a grid, connected by straight lines. They are often used to display a trend in data over intervals of time. Lines are not necessarily representative of any data between connected points. Line charts can be single-series (one line), or multi-series (multiple lines). On a multi-series chart, lines are differentiated by color.

fKnX5zdARs.png

Example two-series line chart

Spline

Spline charts are a stylistic variation of a Line chart. Data points are connected by an interpolated curve. They are often used to display a trend in data over time, with estimated data between points. Spline charts are created in the same manner as Line charts.

JI4y0W76I2.png

Example two-series spline chart

Area

Area charts are a variation of a Line chart. The area below each line is colored to represent cumulative data. They are often used to compare cumulative totals over time. On a multi-series chart, each series is given a distinct color, and the colors blend where series areas overlap. Area charts are created in the same manner as Line charts.

CpmaMR4pHl.png

Example two-series area chart

Spline Area

Spline Area charts are a stylistic variation of an Area chart. Data points are connected by an interpolated curve, and the area below each curve is colored to represent cumulative data. They are often used to compare cumulative totals over time, with estimated data between points. On a multi-series chart, each series is given a distinct color, and the colors blend where series areas overlap. Spline area charts are created in the same manner as Line charts.

azIvrSiut6.png

Example two-series spline area chart

Stacked Area v2021.1+

Stacked Area Charts are a variation of a multi-series Line chart. Each area is a category of data values stacked additively. The height of the area represents the total quantity of the category, and each segment represents the data value in proportion to the total. Each series is differentiated by color. Stacked Area Charts can be created in the same manner as multi-series line charts.

DqiNvhWrqf.png

Example two-series stacked area chart

Zoom Line

Zoom Line charts are variations of a standard line chart. Zoom line charts have the same basic construction and components of a line chart, but add in the ability to zoom in and out to see more or less data points in the user interface.

brGJDmppQ6.png

Example two-series zoom line chart

Statistical Process Control (SPC)

A Statistical Process Control (SPC) Chart is a graph used to study how a process changes (usually over time). Data is plotted in time order. SPC charts always have a central line for the average, an upper line for the upper control limit and a lower line for the lower control limit. Control limits are located 3 standard deviations above and below the centerline (mean). Data points outside of the limits are indicative of an out-of-control process.

nrLv1mPCXt.png

Example two series SPC chart

Radar v2021.1+

Radar Charts also known as Spider Charts can be used to compare dimensions along a single radial grid. The name Spider Chart derives from the resemblance to a spider’s web. Each dimension or label is located at the outer vertices of the grid, and the magnitude of that dimension’s value is displayed by the distance of the data point from the center of the chart.

0pl06GKYoV.png

A radar chart with six dimensions (labels) and two series

Pie, Doughnut, Pyramid, and Funnel Charts

Pie ChartTypePie.png

Pie charts are used to show the relationship of individual data fields in a series as portions of the total data in the series. They are shaped like a circle divided into colored  “slices,” each representing a data value. The area of each slice of the pie is proportional to the quantity it represents. Pie charts are single-series.

Doughnut ChartTypeDonut.png

Doughnut charts are a stylistic variation of a Pie chart. They are ring shaped with a circular “hole” in the center like a doughnut. The ring is divided into colored “slices,” each representing a data value. The area of each slice is proportional to the quantity it represents. Doughnut charts are created in the same manner as Pie charts.

Pyramid ChartTypePyramid.png

Pyramid charts are a variation of a Pie chart. They are often used when it is necessary to show a hierarchical order of data as well as its quantity.

Each data value is represented by a vertically stacked “slice” of a triangle, the height of each proportional to the quantity it represents. The slices are stacked in sort order. The width of each slice corresponds to its order, but has no relation to its quantity. Pyramid charts are created in the same manner as Pie charts.

Funnel ChartTypeFunnel.png

Funnel charts are a variation of a Pie chart. They are often used to show stages in a process as a falling value or percentage.

Each data value is represented by a vertically stacked “slice” of a triangle, the height of each proportional to the quantity it represents. The slices are stacked in sort order. The width of each slice corresponds to its order but has no relation to its quantity. Funnel charts are created in the same manner as Pie charts.

Spark Charts

Spark Line ChartTypeSparkLine.png

Spark line charts are a variation of a single-series Line chart. They are used to display continuous trends in data, usually with regard to time. Spark line charts have no grid or axes and instead rely on point labels and benchmark lines to provide reference. Spark line charts are single-series.

Spark Column ChartTypeSparkColumn.png

Spark column charts are a variation of a single-series Bar chart. They are used to show comparisons between data values. Spark column charts have no grid or axes and instead rely on colors and benchmark lines to provide reference. Spark column charts are single-series.

Pareto Charts

Pareto charts are a type of single-series chart generally used to highlight the most important element amongst a group. Pareto charts combine a Column chart, each column representing a data value sorted in descending order, with a Line chart, each point representing the cumulative percentage of the total.

Sample Pareto chart

Scatter and Bubble Charts

Scatter

Scatter charts use pairs of data values as coordinates for points on a grid. They are often used to find relationships between two variables in a set of data. Scatter charts can be single-series (one set of points) or multi-series (multiple sets of points). On a multi-series chart, series are differentiated by point color and shape.

OT3Xe9Hqy6.png

Bubble

Bubble charts are a variation of a Scatter chart. They use pairs of data values as coordinates for “bubbles” on a grid, and a third data value for the size of the bubble. They are often used to find relationships between three variables in a set of data. Bubble charts can be single-series (one set of bubbles) or multi-series (multiple sets of bubbles). On a multi-series chart, series are differentiated by bubble color.

rvj0nqJlGd.png

Heatmap Charts

 

Heatmaps are available in Advanced Reports starting with v2020.1.3+.

Heatmaps

A heatmap, sometimes referred to as a mosaic plot or density function visualization, is a chart with two related axes and 1–6 data series arranged on an X-Y grid. The defining characteristic of a heatmap is its use of color or shading to indicate data magnitude. In addition to color/shade, each cell may display up to five additional values (one in each corner and a fifth in the center). When hovering the mouse over a cell, a tooltip may optionally display information about the series. Like other charts, heatmap cells may be linked to other reports to drilldown into further detail.

Data Layout

Heatmaps only support Column Based Chart Data Layout (Layout 2). Additional information about data layouts can be found in the Chart Data Layout Types article.

Examples

VXInKthggG.png

A heatmap in gradient coloring mode displaying fundraising activity by month over the last 12 years

4ik2y59dL1.png

A heatmap in interval coloring mode displaying the quantity of orders placed by each salesperson for several years, including a data series displayed in the center of each cell

 
grldCMl0G5.png

A heatmap in gradient color mode displaying the performance of five service technicians on work tickets, including two displayed data series and a legend on the right side. A tooltip explains the meaning of the displayed data series.

Advanced Reports

Arranging Data for a Heatmap

Data to be displayed on a heatmap must be grouped into two sections.

For example, to show the number of products from each category ordered by each employee, the report should have a sort first on the Employee and then on the Category.

mMAAhlquxd.png

Data on the report should then be placed in a group header or group footer section that changes on the second (inside) sort object. In this example, the second (inside) sort is Categories.CategoryName. For more information about sorting and grouping on Advanced Reports, review the Advanced Reports: Sorts article.

sE2HxPPoLo.png

Tip

To prevent the first sort object from repeating and to maintain a sense of hierarchical grouping, enable Duplicate Suppression on that column in the report. Select the cell and click the Suppress Duplicates (pre-v2020.1.1) Hide Repeated Values (v2021.1.1+) SuppressDuplicates.png

icon on the toolbar.
TGH0NjwKH0.png
Suppress Duplicates/Hide Repeated Values disabled for Salesperson’s Name
q6mbn1QyYr.png
Suppress Duplicates/Hide Repeated Values enabled for Salesperson’s Name

Adding a Heatmap to a Report

To insert a heatmap into an Advanced Report:

  1. Organize the data on the report as described in the above Arranging Data for a Heatmap section.
  2. Select a Group Header, Group Footer, Report Header or Report Footer cell.
  3. Click the Chart Wizard Chart.png icon in the toolbar to start the Chart Wizard.
  4. On the Type tab, choose ChartTypeHeatmap.png Heatmap.
  5. Click Next to continue with the Data, Appearance and Size and Preview tabs, detailed below.

Data Tab

Set the axis labels, data series and data formatting options on the Data tab.

KLZp25Kshd.png

Select the X (horizontal) axis values and Y (vertical) axis values from the X Values and Y Values dropdowns respectively.

Optionally, select sorting of the X Values and Y Values from the Sort X-Axis By and Sort Y-Axis By dropdowns. Choose from:

  • Report Order — axis values will be displayed in the order they are returned from the data source. This is the default sorting method.
  • Data Labels — axis values will be sorted by the label that appears on the chart. For example, a list of seasons would be ordered Fall, Spring, Summer, Winter in alphabetical order. Choose a sorting direction from the Direction dropdown that appears, either Ascending or Descending.
  • Data Values — axis values will be sorted by the value associated with the label. For example in the Northern Hemisphere, Winter, Fall, Spring, Summer since winter has the coolest temperatures and Summer has the warmest. Choose a sorting direction from the Direction dropdown that appears, either Ascending or Descending.

Note

Like Scatter and Bubble Charts, Heatmaps consider the lower-left corner as the origin for axis labels. This means when sorting axes in Ascending order, the smallest or earliest value will appear in the bottom or the left corner. The largest or latest value will appear on the top or the right corner. See the figure below for a graphical explanation.

heatmap-sorting.png
Ascending sort order for axes in heatmaps

Check the Percentage Mode checkbox to transform the Assign Color By series (assigned in the Appearance tab) to relative percentages 0–100%. When percentage mode is enabled, the applicable series will show a % sign and only Percentage of Data Color Distribution mode will be available in the Appearance Tab.

lUm9tadNA7.png 3kuQFHjfi4.png
A heatmap with Percentage Mode disabled (top) and the same heatmap with Percentage Mode enabled (bottom)

ApplyBtn.png

Data Layout… is disabled for heatmaps, as only column based chart layout (layout 2) is supported.

Add a minimum of one, and a maximum of six data series:

KgRoRkoiWp.png

Important

At least one of the series must be numeric.

  1. Click the + Add Heatmap Series button. The first series will appear in the Center display area position. Series may also be displayed in the Top Left, Top Right, Bottom Left, and Bottom Right of a cell, or not at all if in the Color Only display area position.
    To move the series to a different location, either:
    • click and drag the Move Grid Row DragGrip.png icon to move the series to the desired position.
    • use the Move Item Up MoveGridRowUp.png and Move Item Down MoveGridRowDown.png icons to move the row up or down by one position at a time

    Priority will be given to display the Center series in the cell if present. If the cells are not large enough to display the other series without them colliding vertically, then they will be hidden and only be visible in the tooltip if their Show in Tooltip checkbox is checked.

  2. Choose the Data Field to include in the series from the dropdown. The data field must be in the same report section as the X Values and Y Values.
  3. Uncheck the Show in Tooltip checkbox to prevent the series from appearing in a tooltip when the cell is hovered over with the mouse. The default is for all series to appear in the tooltip (checked).
  4. If Show in Tooltip is checked, it is recommended to provide a friendly Display Name for the series. If no Display Name is provided, the name of the series as it appears in the Data Field dropdown will display instead. A colon will be automatically appended at the end of the Display Name.
    25hBud711t.png
    Pkyb8MZGjs.png
    Three data series with no Display Name specified (top) and with a Display Name specified (bottom)
  5. Click the Number Format FormatCells.png icon to change how the value is displayed in the cell and in the tooltip. This will open the Number Format dialog which works very similar to the Cell Format dialog in the Advanced Report Designer. The number formatting changes will only apply if the data field is numeric.
  6. Remove a series by clicking the Delete DeleteItem.png icon at the end of the row.

Click Next to advance to the Appearance tab.

Appearance Tab

Set the heatmap coloring scheme, labels, legend and other features on the Appearance tab.

Colors
271DiykqmD.png

Color section of the Appearance tab

The data values that color the cells are set in the Assign Color By dropdown. Choose one of the numeric data series defined in the Data Tab from the dropdown. The magnitude of the chosen series will be used to color/shade the cells.

There are four ways to style the coloring of the heatmap cells, by setting different combinations of the Style and Color Distribution options.

Choose the method of color transitioning by selecting one of the Style options, either:

  • Gradient — colors will change smoothly, automatically and evenly between the color breakpoints. A minimum of 2 colors must be provided in gradient mode, with 3 being the default number provided for new heatmaps.
  • Interval — colors will change in explicitly defined steps when the magnitude of the Assign Color By field falls within specified Bottom Value and Top Value settings. A minimum of 1 color must be provided in interval mode, with 5 being the default number provided for new heatmaps.

Choose the method of entering breakpoints into the color grid by selecting one of the Color Distribution options. Breakpoints are locations in the data where the color will have a defined change. Either:

  • Percentage of Data — breakpoints are calculated as a percentage of the data values with the smallest value at 0% and the largest value at 100%. This is the default mode, and the only mode available when Percentage Mode on the Data tab is checked.
  • Data Values — breakpoints in color happen at explicitly defined values of the data. This is useful when the desired data point changes are well known.

The Color Grid is where the colors, breakpoints and legend labels are set. Depending on the Style and Color Distribution options, the color grid will appear slightly differently for each expected input.

Table A — Color Grid Control Layouts

LiXEy4dAA0.png

Gradient, Percentage of Data

Q68D1W4DJA.png

Interval, Percentage of Data

OpvBPJwbLA.png

Gradient, Data Values

se39RkEDZ1.png

Interval, Data Values

Additional color breakpoints may be added by clicking the +

Add button on top of the grid, and removed by clicking the Delete X icon at the end of the corresponding row.

For each breakpoint:

  • set the location where the color break will happen. Breakpoint values must all be numeric and must be entered in ascending order.
    If Assign Color By is a plain data field (i.e. not a formula) and Color Distribution is set to Data Values a filter dropdown will appear for each breakpoint value required, to aide in selecting values. Otherwise, values must be entered manually.
    • For Gradient — specify the value where the background color of the cell will match the Color column. Colors will automatically shift towards and away from the Color as values approach and diverge from this point
    • For Interval — specify the Top Value of each interval where the background color of the cell will match the Color column. The Bottom Value for the next breakpoints will be calculated automatically.
  • a Legend Label can be specified to appear in the optional chart legend. More detail about the legend is detailed in the Labels section below.
  • remove it by clicking the Delete DeleteItem.png icon at the end of the row

The background colors of the cells are controlled with the following settings:

  • select a predefined color palette from the Theme dropdown. Available choices are:
    • Default — a color theme defined by the system administrator
    • Named Themes — a variety of named color themes are available (e.g. Blue Gray, Emerald Forest, Prismatic Wave, etc…)
    • Custom — the color palette may be manually specified as detailed below
  • manually change the colors by choosing Custom from the Theme dropdown and then clicking on the squares in the Color column and choosing a new color

Note

The font color of the Center series will automatically change between black or white to contrast with the cell background color. The other series will always appear with black text.

Labels
dV4ivBjD6O.png

Enter a Chart Title, X-Axis Title and Y-Axis Title into their respective fields. The X-Axis Title and Y-Axis Title will always appear along their corresponding axis, but the Chart Title may appear on either the top or bottom of the chart, determined by the Title on top setting in Other Features.

An optional legend can display on the heatmap. Choose a Legend Position from the dropdown:

  • None — no legend will be displayed
  • Right — (default) a legend will be displayed along the right side of the heatmap
  • Bottom — a legend will be displayed along the bottom of the heatmap

The legend displays the range of available colors and their value/percentage assignments. As it does for other charts, the legend also provides a simple filtering capability by hiding certain ranges when clicked.

egOkcrgHY3.png

Using the filtering function of the legend on a heatmap with Interval color styling mode

When Style is set to Gradient on the Appearance tab, the legend appears as a double-ended range slider. The knobs on the legend can be dragged to change the filtered range of values.

qqCScuXbBH.png

Using the filtering function of the legend on the same heatmap with Gradient color styling mode

A font may be selected from the Label Font dropdown. This font will be applied to all content displayed on the chart including the data series, labels, legend and tooltips.

Other Features

The Other Features for heatmaps work the same as they do for other chart types. For more information about these features, review the Other Features section of the Charts article.

Advanced Features

Advanced Features allow special commands to be passed directly to the heatmap rendering engine.

To create a heatmap that displays only color in each cell, but still maintains the ability to show up to 5 data series in the tooltip, add the showvalues feature:

  1. In the Element Name field enter showvalues.
  2. Click the Add Attribute button.
  3. In the field that appears next to the newly added showsvalues feature, enter 0.
ZA6PZPemf7.png

This heatmap will show only color when rendered, but hovering the mouse over any cell can display up to 6 data series in the tooltip

To return to normal data display mode, click the Delete X

icon next to the showvalues item.

Otherwise, the Advanced Features for heatmaps work the same as they do for other chart types. For more information about these features, review the Advanced Features section of the Charts article.

Click Next to advance to the Size and Preview tab.

Size and Preview Tab

As it does for other chart types, the Size and Preview tab displays a simulation of the configured visualization. The data displayed is sample information only and is not representative of the data that will be included when the report is executed.

For more information about the settings available in this tab, review the Size and Preview section of the Charts article.

GeoCharts

Note

The system administrator can restrict access to this feature, therefore it may not be available in all environments. Contact the system administrator for more information.

A GeoChart can be displayed in an Advanced Report to give a basic visual representation of geographic data.

28wCHkg5yX.png

Add a GeoChart Visualization

To add a GeoChart to an Advanced Report:

  1. Select a Group Header, Group Footer, Report Header or Report Footer cell.
  2. Open the GeoChart Wizard:
    • (v2021.1+) Click the Insert Insert.png DropDownArrow2.png icon on the toolbar, then click Geochart.png GeoChart

The GeoChart Wizard has three tabs: Type, Locations and Data outlined below.

Type

In the Type tab, select the initial view, size, colors, and if a legend should be displayed.

1pqoNOKwzP.png
  1. Use the Base Map dropdown to select the location that initially displays on the map. Select the world, a region or a country name.
  2. In the Dimensions group, select the size of the GeoChart by either:
    • Check the Fit to Cell checkbox, which will cause the map to fill its containing cell.
    • Enter the height and width (in pixels). This requires that Fit to Cell be unchecked.
    • Drag-and-drop the resizing handle at the bottom-right corner of the preview. This requires that Fit to Cell be unchecked.
  3. The Color dropdown determines the palette of colors that will color/shade the map. Choose from:
    • Theme — a variety of named color themes are available (e.g. Coral, Election, Forest, etc…)
    • Linear Range — choose a beginning (minimum) color and an ending (maximum) color. The application will automatically blend from the beginning to ending color. Click the color selector icons to open the color selector to choose the colors.
  4. Check the Show Legend box to display a legend in the bottom-left corner of the map.

Click Next to advance to the Locations tab.

Locations

In the Locations tab, specify which geographic locations should display on the map.

5gJy5JqsR3.png
  1. Use the three Location Values dropdowns to select the cells that contain the geographic information for the corresponding Location Type on the map. To utilize Region information, such as states/provinces, Country information must be provided. Similarly, City information requires Region and Country information.

    Region Naming Scheme

    Geographic naming schemes must be consistent within each level. Countries can be named by either their country code abbreviation, English name, or regional name. But do not mix schemes or the application may not interpret the data correctly.

    • Country — select a data cell with country names if the Base Map and data comprises multiple countries. This level is required if the Region or City names may be ambiguous between countries. For example, Vancouver is ambiguous between Vancouver, British Colombia, and Vancouver, Washington.
    • Region — This is for country subdivisions such as States, Provinces, or Districts. This level is required if the City names may be ambiguous between regions. For example, Portland is ambiguous between Portland, Oregon and Portland, Maine.
    • City — GeoCharts have no boundary data for cities, so they are shown as circular markers.
  2. The Show last Location type as dropdown specifies how to display the data at the most specific Location Type where a Location Value is set. Choose from:
    • Markers — circular markers will appear.

      Note

      City level data will always be displayed as markers. If city level data will be the most specific, always choose Markers.

    • Regions — the entire region will be shaded with a color.

    See the examples below:

    Jva5vwBWwj.png
    Show last location type as set to Markers
    jgLbLJIKNb.png
    Show last location type as set to Regions

Click Next to advance to the Data tab.

Data

In the Data tab, specify which data determines the color of each Location Type and the size of each marker.

mG9rUIpMyJ.png

For both Color of Locations and Size of Markers, set the values below. Color of Locations is required, while Size of Markers is optional.

  1. Use the Data Values dropdown to specify what cell on the report determine the color and size of each marker. Setting a cell for the size of marker is optional.
  2. Enter a brief description in the Labels field. The labels appear in tooltips when hovering over the regions.
  3. Select an Aggregation Type from the dropdown to choose how the Data Values will be summarized. Choose from:
    • Sum — display the additive total of all data in the data value
    • Avg — display the average (arithmetic mean) of this data value
    • Count — display the number of rows in this data value. For example in the data set {1, 2, 3, 3, 4, 4} the count is 6.
    • Distinct Count — display the number of unique rows in this data value. For example in the data set {1, 2, 3, 3, 4, 4} the distinct count is 4.
    • Min — display the smallest or earliest value of this data value
    • Max— display the largest or latest value of this data value

    Tip

    To use fixed-size markers instead of dynamic size:

    1. Select a report cell containing a fixed numeric value, as written with a preceding equal sign (=). For example: =10.
    2. From the Aggregate Type dropdown, select Avg.
  4. Select a Display Format from the dropdown to format the data value in the tooltip. Choose from:
    • Default — displays the values without any formatting. (e.g. 1234.5678)
    • Currency — prepends the US Dollar sign ($) to the values. (e.g. $1234.5678)
    • Percent — multiplies the data value by 100 and appends a percent sign (%) to the values. (e.g. 123456.78%)
    • Scientific Notation: displays the values in scientific notation. (e.g. 1.23456789E3)
  5. Choose from 0–6 Decimal Places to display on the data value from the dropdown.

Click Finish to add the completed visualization to the report.

Interacting with GeoChart Visualizations

On the first run, it may take a few minutes for the map to populate with data and for the data to be aggregated.

Hover the mouse over a shaded region to display additional information in a tooltip.

firefox_acOZW8fYu0.png

If configured, click on the shaded regions to drill down into more detail. Click [Back] to zoom back up a level.

EHHwXgBkgP.gif
Drilling down from world view to the United States, then selecting Washington state, then viewing the map detail for the cities Seattle and Kirkland

Note

When an Advanced Report containing a GeoChart visualization is exported to an output file type that supports visualizations (i.e. PDF, RTF or Excel) the map will be reset to the default view defined in the Type tab of the wizard.

Google Maps

Note

The system administrator can restrict access to this feature, therefore it may not be available in all environments. Contact the system administrator for more information.

The Google Maps Wizard allows interactive maps with highlighted data to appear in Advanced Reports. Geographical areas can be pinpointed or highlighted dynamically depending on report data.

HNU2cA51FS.png

 A sample Google Map visualization with a primary metric coloring the countries and three additional metrics displayed in a tooltip

This article is divided into two sections:

  • Add a Google Map Visualization — instructions on creating a Google Maps visualization to an Advanced Report
  • Interacting with Google Maps Visualizations — instructions for interacting with Google Maps visualizations in the Report Viewer

Add a Google Map Visualization

To add a Google Map to an Advanced Report:

  1. Select a Group Header, Group Footer, Report Header or Report Footer cell.
  2. Start the Google Maps Wizard:
    • (v2021.1+) Click the Insert Insert.png DropDownArrow2.png icon on the toolbar, then click Google_Map.png Google Maps

The Google Maps Wizard has four tabs: Locations, Data, Appearance, and Size and Preview outlined below.

Locations

Use the Locations tab to correlate data on the report with locations on the map.

ry5WADw0gY.png

Locations tab of the Map Wizard dialog

  1. Add location types by either:
    • dragging-and-dropping it to the selection pane,
    • double-clicking it, or
    • clicking on it then clicking the blue arrow icon

    Note

    Certain location types may require other types to be added or may prevent other types from being added.

    BUpjqD1kj3.png

    Adding street address requires that city and state, or city, state be added as well

  2. Choose the content of the cell that correlates to each location type from the Report Cell Value column.
    eBuUBOD1hw.png

Remove a location type by clicking the Delete X icon at the end of the row.

Click Next to advance to the Data tab.

Data

In the Data tab determine what values, called metrics, will color and display on the map. The primary metric is used to color/shade the map and any number of additional metrics may be displayed in a tooltip when the mouse hovers over a region.

E8xG4mX9rt.png

Data tab of the Map Wizard dialog

There must be a minimum of one metric. Click the Add.png

Add Metric button to add additional metrics. Click the Delete icon to remove a metric.

For each metric in the list:

  1. Use the Metric dropdown to select the report cell that contains its data.
  2. Select how to summarize (aggregate) the data from the Agg. Type dropdown:
    • Sum — display the additive total of all data in the data field
    • Count — display the number of rows in this data field. For example in the data set {1, 2, 3, 3, 4, 4} the count is 6.
    • Distinct Count — display the number of unique rows in this data field. For example in the data set {1, 2, 3, 3, 4, 4} the distinct count is 4.
    • Average — display the average (arithmetic mean) of this data field
    • Minimum — display the smallest or earliest value of this data field
    • Maximum — display the largest or latest value of this data field
    • None v2018.2+ — displays the raw cell value of this data field.
  3. Enter a brief description in the Labels field.
  4. Select whether it is the Primary Metric. The Primary Metric is used to color/shade each region.

    Note

    Metrics with an Agg. Type except None may be the Primary Metric.

  5. Click the Number Format FormatCells.png icon to change how the metric is displayed in the tooltip. This will open the Number Format dialog which works very similar to the Cell Format dialog in the Advanced Report Designer. The number formatting changes will only apply if the data field is numeric.

Hyperlinks v2018.2+

A hyperlink may optionally appear in the tooltip when zoomed in to the map at the drop pin level.

lwtJbmWvJ1.png

Demo of a hyperlink in a Google Map

To do this:

  1. A cell on the report must contain the Hyperlink function.
    For example, the report below will launch a Google search for the company name when the link in the tooltip is clicked by using this formula:
    =Hyperlink("https://www.google.com/?q="&{Customers.CompanyName},{Customers.CompanyName})

    keMG62b5Et.png

  2. Add the cell with the hyperlink formula as a metric with Agg. Type set to None.

    Note

    Hyperlinks used for drop pins can be referenced from any section within the report; however, for dynamic linking, hyperlink information should be referenced from the detail section or a grouped section.

    BvC7uZhPWP.png

Click Next to advance to the Appearance tab.

Appearance

In the Appearance tab, determine the appearance of the metrics on the map.

appearancetab.png

Appearance tab of the Map Wizard dialog

Primary Metric Colors

Choose a coloring style from the list on the left, either:

  • Themes — a variety of named color themes are available (e.g. Coral, Election, Forest, etc…)
    Z0zxSYbIco.png

    Selecting the Peterbrook theme

  • Linear Range — choose a beginning (minimum) color and an ending (maximum) color. The application will automatically blend from the beginning to ending color based on the primary metric’s value. Click the color selector icon to open the color selector to choose a color.
    ol3SDHUY53.png

    Entering a linear color range

Check Show Legend to add a legend in the bottom left corner of the map.

Metric Levels

Calculate Metrics Per — select for which geographic levels to summarize the metrics. Hover the mouse over the More Information DiscoveryObjectInfoNeeded.png

icon to learn more about this function.

Display Drop Pins — select whether to display drop pins, which will appear on city, street address, or latitude/longitude locations. Hover the mouse over the More Information DiscoveryObjectInfoNeeded.png

icon to learn more about this function.

Note

The summary function None requires a drop pin.

Conditional Drop Pin Colors — dynamically modify a drop pin color based on its value (v2018.2+). This action is similar to conditionally formatting cells in a report.

  1. Click the FormatCells.png Conditional Drop Pin Colors… button.
  2. Click Add.png Add to insert a new conditional statement. Select a color that the drop pin will become when the condition is met.
  3. For each conditional color, add a condition that when true will color the drop pin. Click the Formula Editor Formula.png icon to open the Formula Editor.The left side contains a list of the Conditional Drop Pin Parameters that includes:
    • The metric values (listed in order of their creation),
    • the Location Types that are defined in the Location tab

    The right side contains all of the application’s built-in formulas. You can drag a data field or a formula to the Formula box, or type it in by hand. The editor also supports using parameters in the form @[email protected]. For more information about building formulas, review the What are formulas? and Formula Basics articles.

    The formula must return a logical true value to cause the drop pin to become conditionally colored.

    OcqJl9n4gv.png

    Conditional Drop Pin Formatting that will color the pin red if the value of the first metric is less than 50,000; amber if it is less than or equal to 75,000; red if it is greater than 10000

  4. Click Okay to close the Conditional Drop Pin Formatting dialog.

Click Next to advance to the Size and Preview tab.

Size and Preview

Set the size, initial view, and type of map to display in the Size and Preview tab. This view will also be used when the report is exported.

googlemapes_sizeandpreview_tab.png

Size and Preview tab of the Map Wizard dialog

Note

The preview uses placeholder data values. It does not reflect the actual region shading.

Set the initial view of the map by panning and zooming to a location.

  • Click-and-drag on the map to pan.
  • Click the Zoom In and Zoom Out 1M7Dp9e8RV.png icons to change the zoom level.
  • Double-Click on a region to drill down into the child regions (e.g. double-click on a state to see data by city)

Change the size of the chart in one of three ways:

  • Drag-and-drop the resizing handle at the bottom-right corner.
  • Check Fit map to cell and which will cause the map to fill its containing cell.
  • Check Set specific size and enter a custom Height and Width in pixels

Select the style of map with the Base Map dropdown. Choose from:

  • Road Map — displays the default road map view. This is the default map type.
  • Terrain — displays a physical map based on terrain information
  • Satellite — displays Google Earth satellite images.
  • Hybrid — displays a mixture of road map and satellite views

Click Finish to add the completed visualization to the report.

Interacting with Google Maps Visualizations

On the first run, it may take a few minutes for the map to populate with data and for the metrics to be aggregated. A Loading Data message will appear in the top-left corner, then disappear once loading is completed.

AMwJnwfr2F.png

A Google Map visualization as it appears in the Report Viewer

Google Maps visualizations are interactive in a number of ways:

  • Navigate through the map
    • Click the Full Screen pPDb2Q9DHm.pngicon to open the map in a full screen view.
    • Click-and-drag on the map to pan left, right, up and down.
    • Click the Zoom In and Zoom Out 1M7Dp9e8RV.png icons, or scroll the mouse wheel to change the zoom level. At high zoom levels on Satellite and Hybrid map types two additional buttons appear:
      • Click the Rotate map 90 degrees icon akKavYrTm4.png to rotate the map.
      • Click the Tilt map N7Pz8UGkTd.pngicon to change the map’s tilt.
  • Analyze the data presented
    • Hover the mouse over a colored/shaded region to see a tooltip with the metric data. The color indicates the magnitude of the map’s primary metric.
    • Double-Click on a region to drill down into the child regions (e.g. double-click on a state to see data by city). Click [Back] to move up one level.

      96N8pssBYQ.gif

  • Other functions

    Note

    These functions are provided by Google and are not associated with the reporting application.

    • Click Report a map error to report incorrect pin locations, missing roads and landmarks or wrong business, place or road information displayed on the map
    • Click the Google logo in the lower-right corner to open the map in a new browser tab or window

Note

When an Advanced Report containing a Google Map visualization is exported to an output file type that supports visualizations (i.e. PDF, RTF or Excel) the map will be reset to the default view defined in the Size and Preview tab of the wizard.

Gauges

A Gauge gives a visual representation of the scale of a value. Refer to the Examples at the end of this article.

Gauge Wizard

To add a gauge to an Advanced Report:

  1. Select a cell on the design grid where the gauge will reside. Gauges can be placed in any section of the report except for the Page Header and Page Footer sections.
  2. Open the Gauge Wizard:
    • (v2021.1+) Click the Insert insert icon DropDownArrow2.png icon on the toolbar, then click gauge icon Gauge

The Gauge Wizard will appear. The Gauge Wizard has two tabs: Appearance and Data, detailed below.

Appearance

In the Appearance tab, choose the style and size of the gauge.

Type

Select the Type of gauge that will appear:

  • Semi-circular angular guage with a needle pointing to 75% of the scale Angular — the indicating needle sweeps from left (minimum) to right (maximum) along a curved dial
  • Rectangular guage with pointer at 90% of the scale Linear — the indicating needle sweeps from left (minimum) to right (maximum) along a horizontal line
  • Tri-colored circles with arrows pointing left and right Bulb — value is indicated by the presence of a single color, similar to a flag or semaphore. The value is shown below the bulb.
  • A thermmometer filled with red liquid and small arrow pointing at 90% up the scale Thermometer — value is indicated by the thermometer tube filling from the bottom (minimum) to the top (maximum)

Dimensions

Select the size (Dimensions) of the gauge by either:

  • Drag-and-drop the resizing handle chart_size_grippy.png at the bottom-right corner.
  • Check the Fit to Cell checkbox and resize the chart cell on the Design Grid.
  • Enter a custom Height and Width in pixels directly into the corresponding inputs

Note

Angular gauges have a minimum width of 120 px.

The Advanced Report Designer's Gauge Wizard building a linear guage

The Appearance tab of the Gauge Wizard. A linear gauge 106 pixels tall and 277 pixels tall is selected.

Click Next to advance to the Data tab.

Data

Use the Data tab to choose the value presented in the gauge, the range of values and the coloring of those values.

Value and Range

The Value dropdown is selected with an aggregate from the report. The Static Value radio button is clicked and the Maximum value field is 100.
  1. From the top dropdown, choose a cell with a numeric value that determines the gauge’s indicator position. In the example above, a cell with the formula =aggsum({OrderDetails.Revenue}) that computes the sum of all order revenues is selected.
  2. Specify the range (minimum and maximum) values by choosing one of the Provide range as options. The Min and Max values must be numeric.
    • Static value — specify explicit numeric Min and Max values
      cysqhkiQ6Z.png
    • Cell value — choose cells on the report that represent the Min and Max values
      7QCKRmbLfS.png

      Tip

      To create a “semi-static” gauge, include a cell on the report with the desired static value preceded with an equals sign. In the example above, the gauge’s minimum value will be 0 and the maximum value will be whatever the value of the @[email protected] parameter is at the time of report execution.

Color Ranges

  1. Choose a Color by method to determine how the color breakpoints will be applied to the gauge’s dial:
    • Percentage — breakpoints are calculated as a percentage of the data values with the smallest value at 0% and the largest value at 100%
    • Static Value — breakpoints in color happen at explicitly defined values of the data
    • Cell Value — breakpoints in color happen at value changes that occur in cells on the report
  2. Add or Remove color breakpoints, and select the locations of the breakpoints. Breakpoints values must be in ascending numeric order. There are three breakpoints by default.

    Note

    Thermometers only have one color.

    1. Click Add Add2.png to add additional breakpoints to the end of the list. Click Delete.png Remove to remove the breakpoint at the end of the list.
    2. Enter a hexadecimal color code into the text field, or click the Color Chooser icon to select a color for each breakpoint.
      G3VEGEniaG.png
  3. Click Finish to close the Gauge Wizard and add the visualization to the report.

Examples

Sample report with gauges shwoing average temperatures in several regions of New York State

Thermometers indicating the average minimum and maximum average temperature for regions of New York State

Gauge Wizard dialog showing a cell value range gauge based on the aggregated minimum value of the Temperatures.lo_f field, where the minimum value is a formula aggmin(Temperatures.lo_f) and the maximum is a formula aggmax(Temperatures.hi_f). Coloring is done by percentage of values, with three color breakpoints, one at 70%, one at 85% and the last point for the reaminder of values.

Gauge Wizard dialog settings for the NYS Average Temperatures example

 A linear guage showing the value of dollars raised in a fundraiser

A linear gauge that shows the performance of a fundraising campaign for an organization

 

Angular guages on a sample report indicate how close each salesperson came to reaching their annual sales goals

A report with employee revenue totals and an angular gauge that shows how close to their annual goal they came

Gauge Wizard dialog showing a cell value range gauge based on the aggregated sum of the OrderDetails.Revenue field, where the minimum value is a static value of 0 and the maximum value is the value of a parameter named SalesGoal. The coloring is done by percentage with four breakpoints, one at 40%, one at 65%, one at 85% and one for the remainder of values

Gauge Wizard dialog settings for the Employee Revenue Totals example

Tabular Visualizations

Tabular Visualizations are only available to Dashboards in v2019.2+ of the application.

Tabular Visualizations ChartTypeTabular.png

A Tabular Visualization as its name entails, displays content in a table like format. Unlike the other visualization types, tabular visualizations can display any number of unrelated fields.

dKARBbrTLY.png
A Tabular visualization grouped by Employee Last Name and Product Category

Beginning with v2020.1, each Value on a Tabular visualization can have a different data format type.

Detail rows can be optionally hidden.

Displaying Null Values in Charts

By default, null values do not appear in charts. If, for example, a user creates a chart showing sales for each day of the week, days for which there were no sales would be omitted from the X axis.

Users looking to include null values in their charts can work around this limitation by using Cell-Based Layout (Layout 1). Cell-Based charts allow the user to define each point in a chart.

To ensure that a chart displays null values:

  1. Set up the report so that each point in the chart has a unique cell corresponding to that point’s X and Y values. Below is how one might do this using the day-of-week sales report example. Each X value (day of the week) has its own cell, and each Y value (number of sales) also has its own cell.
    5bTs2u8eKA.png

    Note

    This below utilizes the custom function DayOfWeekName(). Ask the system administrator about the availability of this function.

  2. Add the chart to the report footer section.
  3. On the Chart Wizard’s Data tab, advance to the Data tab, and begin assigning each point its X and Y values.
    pa4WOCACKL.png
  4. Click ApplyBtn.png Data Layout…, then click Cell Based Chart and finally click Okay.
  5. Click Finish to close the Chart Wizard.

This method will produce output including a point for Monday, even though its Y value is null.

l12cikUv5k.png
The example report in the Report Viewer

Chained Reports

Chained Reports combine multiple reports into a single multi-page document. They are a convenient way to bundle related reports into a format suitable for printing or sending to a mailing list.

For example, you could combine a report on total monthly sales over time, product sales for the month, and a report highlighting this month’s top selling employee. And you could schedule it to be emailed regularly at the end of every month.

A benefit of Chained Reports is that unless you want to use collation, they do not need to have anything in common. You could chain entirely disparate reports together without a problem.

Dashboards are also exported in the form of Chained Reports in which each report or visualization tile is displayed on a single page in the report. See Exporting Dashboards for directions on how to export a Dashboard as a Chained Report.

Creating a Chained Report

  1. Click the Create New Report MainLeftPaneNewReport.png icon in the Main Menu and select ThumbnailChainedReport.png Chained Report.
  2. On the Name tab, enter a name for the report and select a folder to save it to. It does not have to be in the same folder as the reports that it contains. Optionally add description text to the Enter a description for the report field.

    Note

    A report name may contain all characters except for the following:
    / : * ? " < > |

  3. Advance to the Reports tab, add the reports to include in the Chained Report. Supported report types are Advanced Reports, Express Reports, CrossTab Reports and ExpressView.The order of the reports in the list is the order they will appear in the output. Click and drag a report or use the Move Item Up ^ or Move Item Down V icons to move a report up or down in the list respectively. Click the Delete X icon to remove a report from the list.Click the Edit Report Options Edit.png icon to set options for handling prompting filters and parameters on the report.
    • Report Filter Prompt — the filter field of this particular filter
    • Report Parameter Prompt — the parameter name
    • Action — choose how to obtain a value for the filter or parameter
      • Common Prompt (default) — all reports which contain this filter field or parameter will use the specified value. In the Data (Prompt Text or Value) field, enter the text to prompt the user for a value. For filters by default, the prompt text will be Specify value for {fieldname} where {fieldname} represents the name of the common filter field.

        Note

        Filter dependency is not honored when executing a Chained Report in this mode.

      • Report Prompt — only this report will use the specified value. In the Data (Prompt Text or Value) field, enter the text to prompt the user for a value. For filters by default, the prompt text will be the filter title from the corresponding report. Changing the filter text in this dialog only changes it for the Chained Report, not for the corresponding report itself.
      • Assign Value — the Chained Report will not prompt for a value for this filter or parameter. In the Data (Prompt Text or Value) field, enter the value to use. For filters by default, if a value is provided in the corresponding report its value will appear here. Changing the value in this dialog only changes it for the Chained Report, not for the corresponding report itself.

        Tip

        Values for prompting filters and parameters cannot be set when scheduling a Chained Report. If a Chained Report is intended to be scheduled, use the Assign Value option to specify values.

  4. Advance to the Options tab to set certain report options
    • Default Export Type — choose the file type to which the Chained Report will export by default. Available types are limited by report export restrictions, and by the Allowed Export Types option. HTML is not supported. Choose Default to use the environment’s default export type.
    • Allowed Export Types — choose which file types the Chained Report is allowed to export to. At least one type must be selected.

      Note

      If one of the component reports in the chain cannot export to a certain file type, then the Chained Report cannot export to that type. All of the reports must share at least one export type, or else the Chained Report will have no compatible type to run as. Supported types are PDF, RTF, CSV, and XLS (Excel).

    • No Data Qualified Action — choose what to display if there is no data to display when the report is executed. Select from:
      • Show Placeholder — show the report without any data in it
      • Skip Report — show nothing, and move on to the next report in the chain
    • Collate Reports on — check to collate the Chained Report. This option is enabled only when all of the reports in the chain share at least one common sort field. The sort field must be a standard column type without a formula. See the Collating Reports section below for more information.
    • Page break after each report — choose whether to start a new page after every report. This only affects PDF and RTF files.

      Tip

      When building a chained report with the Page break after each report checkbox unchecked, consider placing the title of the component reports in a Report Header section instead of a Page Header section. Consider the examples in Table A below.

  5. Click Save and Close to save the report and close the wizard.

Note

Reports with document templates can be added to a Chained Report. The Chained Report must be exported to the same file type as the template. Multiple templates of the same file type can be chained together, with the exception of Microsoft Word based templates.

Table A — Best Practice for Report Titles when Page break after each report is unchecked
Report Title in Page Header Section Report Title in Report Header Section
rGdO8s0Jpd.png
4KYtPDqb1A.png

Collating Reports

Caution

Collation is recommended for advanced users as it can have potential performance implications if used incorrectly. Review Best Practices below.

Collation breaks up the reports in the Chained Report by a chosen sort field, and then groups together the reports by each instance of that sort. Essentially, this turns a sort field into a common grouping for the reports, working in much the same way a group section would. This can allow you to use individual reports as pieces in a composite report.

Some common uses for collation include:

  • Grouping disparate reports by order number, or employee number, or something else in common
  • Combining mostly identical reports, only with different filters or joins, into a composite report
  • Making a composite report with multiples of a feature which normal reports can only have one of, such as a detail section

Execution of Collated Reports

  1. Report 1, filtered by group 1
  2. Report 2, filtered by group 1
  3. Report 1, filtered by group 2
  4. Report 2, filtered by group 2
  5. Report 1, filtered by group 3
  6. Report 2, filtered by group 3

…and so on.

To accomplish the collation, the application will run each report for each filtered group. An non-collated chained report containing two reports will only execute those two reports. A collated chained report with the same two reports sorted on a field with 100 values will execute 200 individual reports.

The system administrator can limit the number of individual report executions. If a collated chained report requires more executions than this limit, the entire chained report will stop and display an error message like this:

Historial Employee Data was not run because it would cause 6 report executions (2 reports multiplied by 3 sort fields in the chain), which exceeds the set maximum of 4. To run this collated chained report, try reducing the number of reports or sorts in the chain.

If this error message appears, change how the report collates with the recommendations in the Best Practices section at the end of this article.

Consider the example reports below. Report 1 lists all salespeople in the company and Report 2 lists the orders placed by that salesperson.

Table B — Non-collated Report
Report 1 Report 2
firefox_x95pLXnTXw.png x5x13cB3SQ.png
Chained Output

When this chain is executed, only two reports run: one for each of the reports in the chain.

ZwqKfeqPeX.png

This yields a final output file that resembles the figure below:

iuRYEIA69H.png

When those same two reports are collated by checking the Collate reports on checkbox, and choosing Employees.LastName as the field,

Table C — Collated Report
Report 1 Report 2
firefox_x95pLXnTXw.png x5x13cB3SQ.png
Chained Output

When this chain is run, since there are two reports in the chain and nine employee last names, there are eighteen reports to execute: two for each of the nine employees.

g9pmtdwpI5.png

This yields a final output file that resembles the figure below. Now, instead of showing one complete report after the other, the two reports are collated by the Employee’s Last Name.

AFxIm1tqLm.png

Best Practices

Since collating a chained report can greatly increase the number of component reports to execute, there are a few considerations to alleviate the load on the system:

  • Minimize the number of reports in the chain
  • Minimize the number of data points in the sort field (e.g. reduce the number of employees) with a filter

Scheduling Reports

Use the Scheduler Service to execute reports and Dashboards regularly at specified times and sending e-mails directly from within the application. This can be useful for reports based on periods of time, such as weekly sales reports or quarterly earnings reports. Batch schedules (also called report bursting) add an additional layer of personalization by linking in a data field for each recipient.

Note

The Scheduler Service is an optional feature. Check with the system administrator for more information.

schedulingmenu.png

Choosing to schedule the Expenses report from the Report Tree’s context menu

Creating a Schedule

Schedules are created and edited with the Schedule Report Wizard.

scheduler_setup_example.png

Scheduling a report for daily expenses to run every 2 hours every day of the week until 6/18/2020

To schedule a report:

  1. Choose the report to schedule in the MainLeftPaneViewReports.png Report Tree then start the Schedule Report Wizard by either:
    • right-clicking on it then clicking schedulereport.png Schedule Report
    • clicking the Menu screen.report_tree_menu.png icon and then clicking schedulereport.png Schedule Report.
  2. Enter a user-friendly Schedule Name. The Schedule Name is displayed in the Schedule Manager.
  3. Select an Export Type to choose which file type to save the report as. Dashboards have two PDF output options: either as a Chained Report or as a Snapshot as it appears on screen.
  4. Optional: For PDF or Excel export types, enter a Password to secure the output file.
  5. Select a date and time for the schedule, and how often it should run:
    • In the Schedule Time field, enter a time for when the schedule should run.
    • Optional: To run the schedule as soon as it is created, select the Execute Immediately check box. This schedule cannot be given a recurrence pattern. Go to step 6.
    • Optional: To run the schedule multiple times per day, check the Repeat Every check box and enter a time for how often it should repeat.
    • Optional: To run the schedule multiple days, choose a Recurrence Pattern from the available options:
      • Daily — the schedule repeats every day, every weekday, or every number of days. Enter a number of days for how often the schedule should repeat, or select Every weekday to run it every Monday–Friday.
      • Weekly — the schedule repeats every week, or every number of weeks on one or more days. Enter a number of weeks for how often the schedule should repeat, and select one or more days when it should run.
      • Monthly — the schedule will repeat every month, or every number of months, on a certain day. Enter a day for when the schedule should run, and a number of months for how often it should repeat.
      • Yearly — the schedule will repeat every year on a certain day. Enter a day for when the schedule should run.
    • Optional: If you have entered a recurrence pattern, enter a date for when the schedule should Start.
  6. Optional: To add filters to the report click the Filters tab. If the report already has filters you can set their values here. See Filters for instructions.

    Note

    In versions prior to v2018.2, Chained Reports do not support scheduled filters.

  7. Optional: To email this schedule to addresses from a database, see Emailing personalized reports.
  8. Click the Recipients tab. To send the report to a list of email addresses, select the Email Reports check box and fill out the following fields:
    1. Enter the recipients’ email addresses in the To, Cc, and Bcc fields. Separate multiple e-mail addresses with a semicolon.
    2. Optional: Enter an email subject in the Subject field.
    3. Optional: Enter an email message in the large text field.

    If you do not want to email the report, uncheck the Email Reports checkbox. The report will be saved to disk instead. You may have to ask your system administrator for the file location.

    Note

    To save the report to a repository instead of e-mailing it, review the Saving Reports to a Repository section below.

  9. Optional: If this is a batch schedule, an Attach Report Output to Email check box is available. Clear this check box if you want to use this report to send alerts, and you do not want to email the report itself.
  10. To execute a test run before finalizing the schedule, click the Test E-Mail button.
    1. The Test Recipients textbox will be pre-filled with the e-mail addresses from the To: field. Add, edit or delete e-mail addresses to send the test to in this textbox.
    2. Click Send to send the schedule’s email now. This is generally used to check the email’s content and formatting.
      DRTZY2kV3A.png

      Test message sent successfully confirmation dialog

  11. Click Finish to save the schedule.

Schedules can be edited after they are created. See Viewing and Editing Schedules below for more information.

Saving Reports to a Repository

In addition to being emailed, Scheduled Reports can be set to run and automatically saved to a specific location. This can be useful for users who wish to automate certain report executions but do not wish to add extra clutter to an email inbox.

To send Scheduled Reports to a repository instead of a recipient via email, simply uncheck the ‘Email Reports’ option in the Recipients tab when creating a new Scheduled Report.

Note

The availability of the Email Results checkbox is determined by the system administrator, so it may not be available in every environment.

Batch Emailing Personalized Reports

Batch scheduling or bursting can send personalized versions of reports to a list of email addresses. The addresses must be defined in a data object, the unique key of which is used as a blanket filter for the report. Each recipient receives a customized version, filtered by their unique key.

whxGy4DJaQ.png

Example of customized e-mail message and filtered report sent to two unique recipients of a batch schedule, this one is for Michael Suyama

CEdmcio4Es.png

This second report output is customized for Steven Buchanan

In order for batch scheduling to work properly, it requires access to a data object with a column of email addresses that must be either located within or joinable to the underlying table. This data object can be added in the Data Objects menu of the report. If this column does not exist, the report will abend with the following error:

System.Exception: Batch email column has no join logic to attach to report.

Note

The data object containing the email addresses does not need to be added to the report itself.

To make a batch schedule:

  1. In the Schedule Report Wizard, click the Batch tab.
  2. Check the Run as Batch Report check box.
  3. Optional: In the To and Cc fields, enter addresses to send a summary email for each completed execution.
    GzKQrFbKVT.png

    Example batch summary e-mail

  4. From the Batch Email Field list, select the data field containing the email addresses for this schedule. Fields can contain a list of email addresses, separated by semicolons (;).
  5. Optional: Click the Recipients tab to enter a subject and message for the batch email.

You can reference data values from the email address data row in the message body. Type the parameter @batch_column@, where column is the name of a data field in the address category (in lowercase text). The value of the field replaces the parameter text in the message output.

Tip

The To, Cc, and Bcc fields are unavailable when using Batch. Dashboards can not be scheduled as a Batch report.

Emailing a Report Immediately

Note

This feature can be disabled by the system administrator, it may not be available in every environment.

In addition to creating a recurring schedule, the application provides the option to email a report immediately directly from the Report Tree.

To do this, select the desired report to email and select the Email Report option from the context menu. Users are then prompted to fill out the email address and select the output format for the report. Only the export types available for a report can be selected from the list. If a report has no export types, it may not be emailed.

email_immediately.png

Sending an report as a PDF immediately to [email protected]

Schedule Manager

Click the Schedule Manager clock icon on the application’s main menu to open the Schedule Manager. Depending on system configuration, you may be able to see reports scheduled by other users. Ask your system administrator for more information.

  • Search for a schedule, report name, company ID or user ID with the Search schedules… field at the top of the tab.
  • Click Refresh Refresh.png to reload all of the available schedule information from all of the Scheduler Services
  • Click Flush Flush.png to clear any completed, deleted, abended or aborted from the Scheduler Manager view and the Scheduler Services working directories

xsaQIZuaJW.png

Example of a Scheduler Manager view for multiple users showing several jobs, some completed, some ready to run and some currently in execution

Each scheduled event is on a row with its most recent and forthcoming run times and a status indicating its condition:

  • Ready — this schedule will run at the next scheduled execution time.
  • Running — this schedule is currently executing
  • Transmitting — this scheduled event has finished running, and the report is being sent to its recipients
  • Completed — this schedule has completed its final event, and will not run again. It will be removed from the list when the cache is flushed.
  • Deleted — this schedule has been deleted, and will be removed from the list when the cache is flushed.
  • Abended — the last run failed due to an error. The schedule will not run again.
  • User Aborted — this schedule is running, but it was requested to be canceled. It will be marked as Deleted.

Scheduled events which have passed are copied to their own row, so that there is a log of previous run times, with a disposition after their name. Event dispositions may be:

  • (archive) — a completed execution of a scheduled report that was saved to disk
  • (email) — a completed execution of a scheduled report that was emailed
  • (cache) — an Execution Cache job
  • (test) — a schedule test triggered with the Test Email button v2019.2.2+

Deleting these rows does not affect the main schedule. These rows are cleared when the cache is flushed, either automatically or by clicking the Flush garbage can

icon.

Editing, Deleting and Managing Schedules

To edit an existing schedule click the Edit pencil icon at the end of the row. Changes to the recurrence pattern will affect all forthcoming run times. You can reuse or reset deleted or completed schedules by editing them. This will reset their status to Ready.

To delete a schedule click the Delete X icon at the end of the row. This sets its status to Deleted. If the schedule is already marked as Deleted, this removes the schedule from the list.

Completed and canceled schedules and archives may be periodically removed from the list by the Scheduler Service’s automatic cleanup routine. Click Flush garbage can

to clear the Scheduler cache and remove them immediately.

User Preferences and Context Sensitive Help

User Preferences

Note

The User Preferences are an optional feature. Check with the system administrator for more information.

The ExpressView Designer toolbar with the wrench icon highlighted by a red outline showing the location of the icon to open the User Preferences dialog

Click the wrench icon in the top-right corner to open the User Preferences dialog

Click the User Preferences icon to open the User Preferences dialog. The dialog consists of tabs:

  • Startup Reports
  • User Reports

Startup Reports

Startup Reports run in their own tabs each time a user starts a session. The system administrator can limit the number of startup reports allowed.

  • To add a startup report, use the Report Tree panel in the dialog on the left to either:
    • Drag-and-drop it to the Report Name panel on the right
    • Click a report name and then click the Add.png Add button
    • Double-click a report name
  • To reorder the reports use the Move Item Up MoveGridRowUp.png and Move Item Down MoveGridRowDown.png icons.
  • To remove a startup report, click the Delete image003.png icon on the corresponding line. This only stops the report from loading on startup, it does not remove the report from the application.

The Startup Reports tab of the User Preferences dialog with one startup report, named Revenue by Date Dashboard

The Startup Reports tab of the User Preferences dialog with one startup report, named Revenue by Date Dashboard

User Reports

User Reports are customizations made by a user to an existing report. Customizations may include formatting, sorts and filter values chosen in the Report Viewer. This is an optional feature, and requires that the system administrator has enabled it.

This tab will show a list of user reports saved for the current user.. To remove a User Report, click the Delete image003.png

icon on the corresponding line.

This only stops the report from loading with customization, it does not remove the report from the application.

To create a user report, execute the report into the Report Viewer, make changes and then save them using the Report Viewer’s toolbar. For more information, review the Report Viewer article.

Context Sensitive Help

Context sensitive help is available at any point in the application. Click the Help ?

icon to open documentation in a new tab. The guide will automatically open to the content pertaining to the active Designer, dialog or feature.

Context Sensitive Help window opened showing the Report Designer help content

Context Sensitive Help window opened showing the Report Designer help content